Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
Earl11 Member Откуда: Сообщений: 75 |
Здравствуйте. Имеется таблица в 50 000 записей. Как вывести, например, по 500 записей (последовательно; например, сначала первые 500, потом следующие)? С помощью ROW_NUMBER()? |
1 дек 19, 23:04 [22029959] Ответить | Цитировать Сообщить модератору |
zby Member Откуда: Мск Сообщений: 53 |
Earl11, [url=]https://docs.microsoft.com/ru-ru/sql/t-sql/queries/select-order-by-clause-transact-sql?view=sql-server-ver15[/url] Смотрите offset...fetch |
1 дек 19, 23:36 [22029978] Ответить | Цитировать Сообщить модератору |
3unknown Member Откуда: New York Сообщений: 140 |
if object_id ('tempdb..#t') is not null drop table #t create table #t(Id int IDENTITY(1, 1) NOT NULL) DECLARE @i int = 0; WHILE @i < 50000 -- insert 100 rows. change this value to whatever you want. BEGIN INSERT #t DEFAULT VALUES SET @i = @i + 1; END select* from #t order by id OFFSET 0 ROWS FETCH NEXT 500 ROWS ONLY ;with a as( select* ,NTILE(100) over(order by id) n from #t ) select id from a where n=1 order by id |
2 дек 19, 00:10 [22030004] Ответить | Цитировать Сообщить модератору |
Earl11 Member Откуда: Сообщений: 75 |
Спасибо |
2 дек 19, 22:33 [22030803] Ответить | Цитировать Сообщить модератору |
Все форумы / Microsoft SQL Server | ![]() |