如何限制查询结果(在我的情况下大约有60K行)并仅从第X行到第Y行选择?
如果我使用ROW_NUMBER(),我不喜欢我的查询,因为它涉及两个select查询..一个用于返回行,另一个用于选择我需要的部分。
更新:
这是我现在使用的查询:
SELECT *
FROM (
SELECT row_number() OVER (ORDER BY E.LastChangeDate DESC) AS row, E.*, U.[DisplayName] AS EntryCreatorDisplayName, U.[Email] AS EntryCreatorEmail
FROM entries e
INNER JOIN
users u
ON e.fk_user= u.id
WHERE e.EntryRank = 2
AND u.Administrator = 1
) as TableWithRows
WHERE (row >= 31 AND row <= 60)