您可以使用ROW_NUMBER():返回结果集分区中一行的序号,从每个分区中第一行的1开始。例:WITH CTEResults AS( SELECT IDColumn, SomeField, DateField, ROW_NUMBER() OVER (ORDER BY DateField) AS RowNum FROM MyTable)SELECT * FROM CTEResultsWHERE RowNum BETWEEN 10 AND 20;