[英]Windowed functions do not support constants as ORDER BY clause expressions in SQL Server TempTable
[英]Where do windowed functions lay in sql's order of operations?
我正在尋找窗口函數在sql中發生的時間。 我知道它們可以在SELECT
和ORDER BY
子句中使用,所以我傾向於認為它們發生在ORDER BY
,但在TOP
之前
當優化程序決定應該發生窗口功能時,就會發生窗口功能。 最好看一下查詢計划。
SQL Server公布查詢的邏輯處理 。 這用於解釋作用域規則(尤其是)。 它與查詢的實際執行方式無關。
顯然,窗口函數的規則是:
FROM
, WHERE
, GROUP BY
和HAVING
子句之后。 ORDER BY
無關(即使您使用order by (select null))
)也是如此。 TOP
不會影響處理。 SELECT DISTINCT
之前進行。 我認為結論是,它們與這些子句中的其他表達式一樣,在SELECT
或ORDER BY
中進行了解析。 他們沒有單獨的地方。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.