Проект «SnakeProject» Михаила КозловаРегистрация

Навигация
⇒SQL\T-SQL⇒

⇐CISCO
⇐Voice(Asterisk\Cisco)
⇐Microsoft
⇐Powershell
⇐Python
⇐FreeBSD and Nix
⇐1С
⇐Общая
⇐WEB Разработка
⇐ORACLE SQL \ JAVA

T-SQL 2012: OFFSET, FETCH,WITH TIES


--Выбрать все записи, но сначала пропустить первые 414 строк
SELECT serial FROM [billing].[dbo].[station] ORDER BY change OFFSET 414 ROWS

--Выбрать 5 записей, но сначала пропустить первые 5 строк
SELECT serial FROM [billing].[dbo].[station] ORDER BY change OFFSET 5 ROWS FETCH NEXT 5 ROWS ONLY

--Выбрать первые 5 записей ничего не пропуская
SELECT serial FROM [billing].[dbo].[station] ORDER BY change OFFSET 0 ROWS FETCH FIRST 5 ROWS ONLY

--Пример постраничной навигации
DECLARE @pagesize AS BIGINT = 25, @pagenum AS BIGINT = 3;

SELECT serial FROM [billing].[dbo].[station] ORDER BY change 
OFFSET (@pagenum - 1) * @pagesize ROWS FETCH NEXT @pagesize ROWS ONLY;

--Синтаксис с WITH TIES
--[ 
--    TOP (expression) [PERCENT]
--    [ WITH TIES ]
--]
--В выборку придет больше, чем указано строк, т.к. 
--WITH TIES может привести к тому, что вернется строк больше, чем указано в значении expression. 
--Например, если expression имеет значение 5, но еще 2 строки соответствуют значениям в столбцах ORDER BY в строке 5, 
--то результирующий набор будет содержать 7 строк.

SELECT TOP(10)WITH TIES mask FROM [billing].[dbo].[station] ORDER BY mask


Комментарии пользователей

Эту новость ещё не комментировалиНаписать комментарий
Анонимам нельзя оставоять комментарии, зарегистрируйтесь!

© Snakeproject.ru создан в 2013 году. При копировании материала с сайта - оставьте ссылку.


Яндекс.Метрика

Goon Каталог сайтов Рейтинг@Mail.ru