gpt4 book ai didi

sql - LAG 可以和 HAVING 一起使用吗?

转载 作者:行者123 更新时间:2023-12-05 02:33:24 28 4
gpt4 key购买 nike

我清楚地记得 T-SQL 永远不会让您混合使用 LAGWHERE。例如,

SELECT FOO
WHERE LAG(BAR) OVER (ORDER BY DATE) > 7

永远不会工作。无论您做什么,T-SQL 都不会运行它。但是 T-SQL 允许您将 LAGHAVING 混合使用吗?

注意:答案所需要做的就是给出一个基于理论或基于文档的原因,说明它为什么不存在,或者给出任何它存在的地方的例子。

最佳答案

来自 Logical Processing Order of the SELECT statement :

The following steps show the logical processing order, or bindingorder, for a SELECT statement......

  1. FROM
  2. ON
  3. JOIN
  4. WHERE
  5. GROUP BY
  6. WITH CUBE or WITH ROLLUP
  7. HAVING
  8. SELECT
  9. DISTINCT
  10. ORDER BY
  11. TOP

窗口函数在 SELECT 级别求值,它在 HAVING 之后,所以答案是你不能使用窗口HAVING 子句中的函数。

关于sql - LAG 可以和 HAVING 一起使用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70999188/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com