4
我寫了下面的SQL代碼在我的SQL Server上運行。爲什麼在SQL Server中使用ROW_NUMBER時會出現錯誤?
SELECT
atd.DeviceID,
ROW_NUMBER() over(order by atd.deviceid) as rownumber
FROM
dbo.Devices atd
WHERE
(rownumber between 11 and 20);
我得到以下輸出:
Msg 207, Level 16, State 1, Line 5
Invalid column name 'rownumber'.
Msg 207, Level 16, State 1, Line 5
Invalid column name 'rownumber'.
正如你所看到的,我想用ROW_NUMBER
只得到通常會由查詢返回的行的子集。我從來沒有使用過ROW_NUMBER
函數。
我在做什麼錯?
運行在你的答案結果給出的第一個查詢出現以下錯誤:'多部分標識符「atd.DeviceID」無法綁定。 ' –
@Daniel只需將DeviceID列的atd前綴關閉即可。 –
@DanielAllenLangdon - 你是對的,我現在更新了我的答案 – Lamak