我目前正在通过Ben Itzik的书tsql fundamental
学习tsql窗口功能。
在解释window
在窗口函数方面的内容的部分中,作者使用了术语window descriptor
有人可以向我解释window descriptor
的含义和代表吗?
答案 0 :(得分:2)
很明显,窗口函数是一个函数,它将根据所描述的公式或来自over()子句的计算进行操作,并在处理所选窗口的每一行(行集)后给出标量结果)。因此,窗口描述符表示它指定了如何在窗口函数中选择窗口行。
答案 1 :(得分:1)
"窗口描述符"是以ROWS BETWEEN
或RANGE 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)