0
我有這個疑問,幾乎讓我想:TSQL排序依據偏移問題
SET NOCOUNT ON
SELECT D.Id from MtdMdl_HierarchicalObject D
where D.Name LIKE '%R%'
SELECT B.* FROM MtdMdl_Item A
OUTER apply (SELECT * FROM MtdMdl_Item as C where a.Id=c.Id) as B
WHERE A.Owner in
(
SELECT D.Id from MtdMdl_HierarchicalObject D
where D.Name LIKE '%R%'
)
order by Id offset 0 ROWS FETCH NEXT 3 ROWS ONLY
GO
不幸的是我想的訂單來自序號獲取新的每個對象上應用3行通過返回:
SELECT D.Id from MtdMdl_HierarchicalObject D
where D.Name LIKE '%R%'
因爲當前腳本對前一個語句的整個結果應用了Paging。
我猜OP希望新的3行對每個數據庫往返,簡單的把一個頂生病返回相同3排。如果我的猜測是正確的,那麼生病需要保持並傳遞某種從應用程序到查詢的StartFromRow_N參數。 – jean
@jean ID OFFSET 0意味着OP不會跳過任何行。所以使用TOP子句而不是OFFSET會更有意義。 –
這是我的錯,在這種情況下,偏移量爲0,但真正的意圖是使用分頁,所以我可以有非零偏移量。 – Nock