2013-11-03 50 views
13

我想我的SQL Server上運行此查詢如下:爲什麼我不能在我的SQL Server上查詢OFFSET/FETCH查詢?

微軟SQL Server Management Studio中10.50.1600.1

但它不能識別OFFSET等顯示錯誤?

SELECT * FROM dbo.tbl_MatchDetail 
ORDER BY MatchDetailID 
OFFSET 10 ROWS 
FETCH NEXT 10 ROWS ONLY; 
+6

您顯示的語法顯然是在SQL Server 2012中引入的,因此如果您通過標記使用SQL Server 2008,那就是問題所在。請參閱[此問題](http://stackoverflow.com/q/2135418/157957)瞭解替代方法。 – IMSoP

+0

ok thanx是否有任何等效的MSSQL 2008 R2語法? – Milson

+1

請參閱我鏈接到的問題的答案。 – IMSoP

回答

22

OFFSET FETCH是一項新功能添加到SQL Server 2012和SQL Server不存在2008年

+0

微軟SQL Server Management Studio中\t \t \t \t \t \t 12.0.1524.0 這是我的MSSQL信息如上MSSQL 2014 CTP2仍然OFFSET關鍵字是無效的,爲什麼? – Milson

+0

OFFSET 10 ROWS FETCH NEXT 10 ROWS only。 –

+1

在結尾處添加關鍵字。 –

13

請注意,你甚至會在2014年得到一個錯誤,如果你沒有一個訂單通過。抵消必須遵循聲明的順序。

+3

這節省了我很多時間,謝謝隊友 –

相關問題