Как выбрать запись из 5-й строки, не используя где запрос в SQL Server - PullRequest
0 голосов
/ 04 января 2019

У меня есть таблица, в которой 10 записей и выборка записей от 5 до 10 без использования условия where.

Ответы [ 2 ]

0 голосов
/ 04 января 2019

Другой способ выполнить запрос - использовать предложение TOP , в соответствии с найденным примером здесь :

SELECT TOP(5) *
FROM mytable
ORDER BY id DESC;

Надеюсь, это поможет.

0 голосов
/ 04 января 2019

Вы можете использовать OFSET-FETCH . Это должно быть примерно так:

SELECT  *
FROM mytable
ORDER BY id
OFFSET 5 ROWS  
FETCH NEXT 5 ROWS ONLY;  

Поскольку приведенный выше синтаксис поддерживается в SQL Server 2012, для ранней версии вы можете использовать функцию ранжирования:

WITH DataSource AS
(
    SELECT *
          ,ROW_NUMBER() OVER(ORDER BY id) AS rn
    FROM mytable
)   
SELECT *
FROM DataSource
WHERE rn >= 5 AND rn <=10;
...