Tôi sẽ tránh sử dụng SELECT *
. Chỉ định các cột bạn thực sự muốn mặc dù nó có thể là tất cả chúng.
SQL Server 2005+
SELECT col1, col2
FROM (
SELECT col1, col2, ROW_NUMBER() OVER (ORDER BY ID) AS RowNum
FROM MyTable
) AS MyDerivedTable
WHERE MyDerivedTable.RowNum BETWEEN @startRow AND @endRow
SQL Server 2000
Phân trang hiệu quả thông qua các tập kết quả lớn trong SQL Server 2000
Một phương pháp hiệu quả hơn để phân trang thông qua các tập kết quả lớn