Skip to content

Commit

Permalink
add sql docs
Browse files Browse the repository at this point in the history
  • Loading branch information
fengzhao committed Nov 14, 2023
1 parent 3efc20b commit 37f82ff
Showing 1 changed file with 4 additions and 1 deletion.
5 changes: 4 additions & 1 deletion docs/basic/4.sql.md
Original file line number Diff line number Diff line change
Expand Up @@ -1558,6 +1558,10 @@ END
## 窗口函数
窗口函数(Window Function)是 SQL2003 标准中定义的一项新特性,并在 SQL2011、SQL2016 中又加以完善,添加了若干处拓展。窗口函数不同于我们熟悉的普通函数和聚合函数,它为每行数据进行一次计算:==输入多行(一个窗口)、返回一个值==。
在报表等分析型查询中,窗口函数能优雅地表达某些需求,发挥不可替代的作用。
窗口函数(Window Function),又被叫做分析函数(Analytics Function),通常在需要对数据进行分组汇总计算时使用,因此与聚合函数有一定的相似性。但与聚合函数不同的是,聚合函数通过对数据进行分组,仅能够输出分组汇总结果,而原始数据则无法展现在结果中。而窗口函数则可以同时将原始数据和聚集分析结果同时显示出来。
Expand All @@ -1569,7 +1573,6 @@ END
这种类型的统计在数据分析非常普遍,如果用寻常的SQL语句实现起来非常冗长反复,相似的步骤重复多次才能实现,无论是脚本编写还是脚本的运行都耗时耗力。此时想必很多人就想考虑用其他办法来实现数据的整合,比如用python程序迭代,而即便如此,且不说时效,就过程而言显得就不那么流畅了(相当于要维护两套系统),而过程的流畅性对后期的数据报表修改和维护是多么的重要,但凡经历过的数据分析师都懂!而窗口函数就是专门解决这类问题,虽然窗口函数很吃内存,在时效上感觉提升不是太大,但是脚本的简洁度、过程流畅性,几乎说是完美。

0 comments on commit 37f82ff

Please sign in to comment.