返回路线图
MODULE 2 / 初级
关联与聚合
把多张表连起来、把多行并成一行:JOIN / GROUP BY / HAVING。
关联与聚合:连表与分组统计
JOIN 把两张表按关联键拼起来:
SELECT c.name, o.amount
FROM customers c
JOIN orders o ON o.customer_id = c.id;
INNER JOIN只留两边都匹配的行;LEFT JOIN保留左表全部,右表缺失处填NULL。
聚合把多行压成一行(count / sum / avg / max / min),常配 GROUP BY 分组:
SELECT customer_id, sum(amount) FROM orders GROUP BY customer_id;
- 过滤"分组后的结果"用
HAVING;WHERE过滤行、HAVING过滤组。 - 当心
NULL:count(列)不会数NULL,sum/avg也忽略NULL。