Was du eingentlich suchst ist "Paging". Wie schon erwähnt kennt
mssql kein LIMIT. Hier ein Beispiel für
MSSQL:
SQL-Code:
DECLARE @PageNum AS INT;
DECLARE @PageSize AS INT;
SET @PageNum = 2;
SET @PageSize = 10;
WITH OrdersRN AS
(
SELECT ROW_NUMBER() OVER(ORDER BY OrderDate, OrderID) AS RowNum
,OrderID
,OrderDate
,CustomerID
,EmployeeID
FROM dbo.Orders
-- hier kommen zusätzlichn Bedingungen, z.B.
-- Where OrderDate < '1.1.2009'
)
SELECT *
FROM OrdersRN
WHERE RowNum BETWEEN (@PageNum - 1) * @PageSize + 1
AND @PageNum * @PageSize
ORDER BY OrderDate
,OrderID;
Quelle:
http://blogs.x2line.com/al/archive/2005/11/18/1323.aspx( "gegoogelt" in 15 sec )