loading

Stanislav Duben

Stanislav Duben ICQ: 66800432 email: duben@seznam.cz Skype: sduben

12. červenec 2007

Jak udělat LIMIT (od,do) v MSSQL 2005

LIMIT(od,do) v MSSQLHodně webových vývojářů si stěžuje, že Microsoft SQL neumí nějakou obdobu příkazu LIMIT (od,do), kterou má v sobě MySQL. Řešení samozřejmě šlo udělat pomocí SELECT TOP n a vnořeného SELECT TOP n už dříve. S novými přikazy T-SQL v SQL 2005 je ale situace ještě jednodušší.

 

 

Stačí použít tento kód, definovat @start jako hodnotu limit OD a @rowsperpage jako počet záznamů, které chceme.


DECLARE @rowsperpage INT
DECLARE @start INT

SET @start = 120000
SET @rowsperpage = 10

SELECT * FROM
(
SELECT row_number() OVER (ORDER BY sloupecek) AS rownum, sloupecek2, sloupecek3, .... sloupecekX
FROM tabulka
) AS A
WHERE A.rownum BETWEEN (@start) AND (@start + @rowsperpage)