【问题标题】:what is a "window descriptor" in tsql window function什么是 tsql 窗口函数中的“窗口描述符”
【发布时间】:2018-04-16 01:50:31
【问题描述】:

我目前正在按照 Ben Itzik 的书 tsql fundamental 学习 tsql 窗口函数。

在用窗口函数解释window是什么的部分中,作者使用了术语window descriptor

有人可以向我解释一下window descriptor 的含义和代表什么吗?

【问题讨论】:

  • window descriptor 基本上是您将用来评估行以实现您想要的结果的窗口函数

标签: sql sql-server tsql window-functions


【解决方案1】:

显然,窗口函数是一个函数,它将根据所描述的公式或 over() 子句的计算进行操作,并在处理所选窗口的每一行后给出标量结果(行集)。所以,Window Descriptor意味着它指定了在窗口函数中应该如何选择窗口行。

【讨论】:

    【解决方案2】:

    “窗口描述符”是以ROWS BETWEENRANGE BETWEEN 开头的部分。

    在许多窗口函数的使用中,这是隐含的。所以:

    select sum(x) over (order by y)
    

    实际上是以下的简写:

    select sum(x) over (order by y rows between unbounded preceding and current row)
    

    (或者是range between;)。

    还有:

    select sum(x) over ()
    

    是以下的简写:

    select sum(x) over (rows between unbounded preceding and unbounded following)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-01-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-07
      相关资源
      最近更新 更多