Mit T-SQL lässt sich von einer Select-Abfrage nur eine Teilmenge der Ergebnisse zurückgeben, so z.B. nur die ersten 10 oder die zweiten 20 Treffer einer SQL-Abfrage.
Dies ist z.B. für die Realisierung einer Paging-Funktionen ideal. Hier ein Beispiel:
WITH Result AS
(SELECT *,ROW_NUMBER()
OVER (ORDER BY [Tabelle].[Feld1]) AS RowNumber
FROM [Tabelle]
)
SELECT * FROM Result WHERE RowNumber>=0 AND RowNumber<=20
In einer .Net Umgebung kann man natürlich den Wert von Rownumber mit AddParam() an den SELECT-Befehl übergeben.