示例
示例
SELECT id, user_id, amount,
COUNT(*) OVER (PARTITION BY user_id) AS user_orders,
SUM(amount) OVER (PARTITION BY user_id) AS user_total,
MAX(amount) OVER (PARTITION BY user_id) AS user_max,
COUNT(*) OVER () AS total_rows
FROM orders;| 组内计数 | PARTITION BY 后不加 ORDER BY:整组统计 |
|---|---|
| 全表计数 | OVER () 不分区 |
| 注意 | 加 ORDER BY 会变成累计计数 |