返回路线图
MODULE 4 / 进阶
分析利器
窗口函数与日期/字符串——从"会查"到"会分析"的分水岭。
分析利器:窗口函数与日期/字符串
窗口函数能在"不把行合并掉"的前提下做分组计算,是迈向 senior 的关键:
SELECT customer_id, amount,
rank() OVER (PARTITION BY customer_id ORDER BY amount DESC) AS rk
FROM orders;
row_number/rank/dense_rank:排名。lag/lead:取前一行 / 后一行的值。sum() OVER (ORDER BY ...):累计求和(running total)。PARTITION BY指定分组、ORDER BY指定窗口内的顺序。
日期/字符串:EXTRACT(year FROM created_at) 取年份,配合字符串函数做清洗与分组。