sql Выборка записей из таблицы базы данных sql server по частям - PullRequest
1 голос
/ 04 мая 2011

Я хочу получать записи из таблицы в базе данных моего сервера sql по частям. Мол, в одном запросе я хочу увидеть первые 1000 записей, в следующем запросе следующие 1000 записей. Точно так же ..

Возможно ли это с сервером sql? Я использую SQL Server 2008. Во время поиска в Google я нашел предложение LIMIT для mysql, но оно не работает для sql server. Так что любой может дать в Sql. Пожалуйста, помогите.

Ответы [ 2 ]

2 голосов
/ 04 мая 2011

Первые 1000 записей:

SELECT  TOP 1000 *
FROM    mytable
ORDER BY
        mycolumn

Общее решение (поддерживает смещение)

SELECT  *
FROM    (
        SELECT  *,
                ROW_NUMBER() OVER (ORDER BY mycolumn) rn
        FROM    mytable
        ) q
WHERE   rn BETWEEN 1001 AND 2000
ORDER BY
        mycolumn
0 голосов
/ 04 мая 2011
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...