Menu
CoddyTech

聚合函数

Coddy 高级 SQL 课程的第 11 课,共 13 课。

聚合函数用于计算截至当前行的 AVG()、MAX() 或其他聚合函数。
例如,我们可以计算每个结束时间段之前获得的最大收入:

monthrevenue
440
520
660
755
861
SELECT month, revenue, MAX(revenue) OVER (ORDER BY month ASC) as max_revenue
from table1

这将返回:

monthrevenuemax_revenue
44040
52040
66060
75560
86161

第 4 个月和第 5 个月的最大收入是 40,第 5 个月和第 6 个月的收入是 60,第 8 个月的收入是 61。这是因为当它找到更高的新收入时,就会舍弃旧值,并使用目前为止的最大值。

对于 AVG() 函数,结果如下:

SELECT month, revenue, AVG(revenue) OVER (ORDER BY month ASC) as avg_revenue
from table1
monthrevenueavg_revenue
44040
52030
66040
75543.75
86147.2
challenge icon

挑战

简单

书有很多页,每页都有很多字。

在这次挑战中,我们会计算这些书的多种指标。

获取每本书截至每一页的总字数、最大字数、最小字数和平均字数,并分别将这些列命名为:total_words、max_words、min_words、avg_words。此外,为每本书按以下比率升序计算页面的密集排名:(avg_words-min_words)/(total_words-min_words),并将这一列命名为 ratio_rank。最后,按 book 和 ratio_rank 升序排列结果。

亲手试试

高级 SQL中的所有课

自己练习: Python 在线编译器