Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Кой е най-добрият начин за пагиниране на резултатите в SQL Server

И накрая, Microsoft SQL Server 2012 беше пуснат, наистина харесвам неговата простота за пагинация, не е нужно да използвате сложни заявки, както е отговорено тук.

За да получите следващите 10 реда, просто изпълнете тази заявка:

SELECT * FROM TableName ORDER BY id OFFSET 10 ROWS FETCH NEXT 10 ROWS ONLY;

https://docs.microsoft.com/en-us/sql/t-sql/queries/select-order-by-clause-transact-sql#using-offset-and-fetch-to-limit-the-rows- върнати

Основни моменти, които трябва да имате предвид, когато го използвате:

  • ORDER BY е задължително да се използва OFFSET ... FETCH клауза.
  • OFFSET Клаузата е задължителна с FETCH . Не можете да използвате ORDER BY ... FETCH .
  • TOP не може да се комбинира с OFFSET и FETCH в същия израз на заявка.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Вземете ред, където колона дата и час =днес - SQL сървър noob

  2. Мониторинг на изпълняваните заявки на SQL Server

  3. Заявка, която връща йерархичен списък с типове тригерни събития в SQL Server

  4. Как да коригирате „Отказът ALTER TABLE SWITCH не е успешен“

  5. Поправка:„BACKUP LOG не може да се извърши, защото няма текущо архивиране на базата данни.“ в SQL Server/SQL Edge