我在
Windows Server 2008上使用SQL Server 2008 Enterprise.我想从前11到前20选择结果(例如我只对第11到第20个结果感兴趣).任何想法如何有效地在tsql中编写此查询?

提前致谢,
乔治

解决方法

不幸的是,SQL Server没有提供类似
MySQL的OFFSET语法.但是,您可能希望尝试使用派生表,如下所示:

SELECT some_field
FROM   (
          SELECT some_field,ROW_NUMBER() OVER (ORDER BY some_id) AS rownum
          FROM   table
       ) AS t
WHERE  t.rownum BETWEEN 11 AND 20

dawei

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注