![](/img/trans.png)
[英]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.