首页 > 解决方案 > SQL Server 2014 - 下一个获取的偏移量

问题描述

我正在尝试运行此代码,但出现错误:

消息 102,级别 15,状态 1,第 3 行
'OFFSET' 附近的语法不正确。

消息 153,级别 15,状态 2,第 4 行
FETCH 语句中的 NEXT 选项的使用无效。

这是我的代码:

SELECT * 
FROM dbp.Expats_Gesamt AS P
ORDER BY P.last_name
OFFSET 10 ROWS
FETCH NEXT 20 ROWS ONLY

标签: sql-server

解决方案


您的错误提示FETCH . . . OFFSET子句错误,这意味着您当前的版本不支持它或者可能是版本兼容性问题(您可以相应地检查和设置)但是我不知道您使用的是哪个版本。

所以,我会尝试subquery改为支持较低版本:

select top (20) p.*
from (select top (30) P.*
      from dbp.Expats_Gesamt AS P
      order by P.last_name
     ) p
order by P.last_name desc;

推荐阅读