我連接到帶有3個鏈接服務器的SQL SERVER 2012
。我使用預先製作的查詢來獲取數據,但是提出查詢的人沒有實現我將需要的分頁,所以我試圖推動這個功能。有一點需要注意的是,我不知道鏈接服務器的版本。這可能是第一次使用鏈接服務器,所以我不熟悉它們的工作方式,但由於在我的機器上,我有2012版本,我嘗試使用OFFSET
和FETCH
,但得到了無效令牌的錯誤。然後我被建議嘗試在我的本地SQL SERVER 2008R2
上運行的語法,但是我也不能這麼做,在這裏。首先是工作代碼:在工作查詢中實現分頁
select *
from openquery(linkedServer,
'
select
ORG.Id as ID,
ORG.FirstName AS "FirstName",
ORG.LastName as LastName
from YMFK.LK99Z ORG
left outer join YMFK.LK88Z Phone
ON ORG.Number = Phone.Number
AND Phone.Col = ''something'' AND Phone.Col = ''else''
inner join YMFK.L77Z ORL
ON ORG.Id = ORL.Id
where
ORG.FirsName like ''%Peter%'''
)
對不起,修改名稱,但邏輯保持不變,所以我認爲它不會是一個問題。
於是我嘗試添加分頁,像這樣:
from (SELECT tbl.*, ROW_NUMBER() OVER(ORDER BY ID) AS
rownum FROM YMFK.LK99Z as tbl WHERE ORG.FirstName like ''%Peter%'') ORG
WHERE ORG.rownum BETWEEN 1 AND 10
我穿上的from YMFK.LK99Z ORG
的地方,也是消除where ORG.FirsName like ''%Peter%'''
。這段代碼是什麼我就先形成工作分頁查詢modfying它儘量少,但第一(原)查詢工作,而第二(修改)查詢是給我的錯誤
Column qualifier or table ORG undefined.".
我沒有立刻得到錯誤像以前一樣,但之後好像2-3secs我得到這個錯誤 - '功能不支持查詢「' – Leron 2014-09-11 12:47:23
當您運行非常怎樣就怎樣。直接在遠程服務器上查詢相同的查詢? – Paolo 2014-09-11 12:51:05
我正在遠程服務器上運行它們。現在我正在使用'Ms SQL Management studio'並直接執行每個查詢。 – Leron 2014-09-11 12:54:48