第4章 · 高级查询技巧


第4章 · 高级查询技巧

章节摘要:基础查询能取数据,高级查询能"算"和"连"。本章讲聚合分组、多表连接、子查询、集合操作,掌握后能写绝大多数分析查询。

核心问题

阅读完本章,你应当能够:

  1. 用聚合函数和 GROUP BY 分组统计
  2. 用四种 JOIN 关联多表
  3. 写各类子查询
  4. 用 UNION/INTERSECT/EXCEPT 做集合操作

核心概念速览

聚合算统计,JOIN 连表,子查询嵌套,集合操作合并——高级查询四件套。

子章节导航

4.1 聚合函数与 GROUP BY 分组

COUNT/SUM/AVG/MIN/MAX + GROUP BY + HAVING。

4.2 多表连接 JOIN

INNER/LEFT/RIGHT/FULL JOIN 的区别和用法。

4.3 子查询

标量/列/表子查询,相关子查询。

4.4 集合操作 UNION/INTERSECT/EXCEPT

合并多个查询结果。

子章节之间的逻辑关系

4.1 聚合(算) ↓ 配合 4.2 JOIN(连) ↓ 嵌套 4.3 子查询 ↓ 合并 4.4 集合操作 ​

聚合算统计、JOIN 连表、子查询嵌套、集合操作合并,四者组合能写复杂分析。

前置知识与后续延伸

  • 前置:第 3 章基础 SELECT
  • 为后续铺垫:本章是数据分析查询的核心,第 7 章视图/索引会用到这些查询

本章学习建议

本章是把查询从"入门"推向"实用"的关键,也是面试和日常工作的高频区。建议放慢节奏,每个主题配合手写练习。

  1. 4.1 聚合函数与 GROUP BY:重点理解"分组"的语义——按某列分组后,每组输出一行。建议用客户表按城市分组统计客户数,再试试多列分组,感受粒度变化。
  2. 4.2 多表连接 JOIN:重点区分 INNER/LEFT/RIGHT/FULL 四者的"保留哪边"。建议拿两个小表(客户、订单)手算 INNER 和 LEFT 的结果集,理解"没匹配上填 NULL"。
  3. 4.3 子查询:重点理解标量、列、表、相关四类,以及 EXISTS 的用法。子查询和 JOIN 经常可以互换,建议同一需求各写一遍,体会取舍。
  4. 4.4 集合操作:重点记住 UNION 与 UNION ALL 的区别(去重 vs 不去重),以及列数必须一致。

本章概念环环相扣:聚合常和 JOIN 一起用(如按城市统计订单金额),子查询常出现在 WHERE 里做条件。建议做几个"组合练习",比如"查出每个城市下单超过 3 次的客户"。学完本章,你应该能独立完成多表统计类查询,这是数据分析最核心的能力。

作者与出处
原作者:灏天文库
来源:平台策划编纂
整理人: 灏天文库整理
由灏天文库平台收录,内容或由平台用户上传,仅供学习交流
发布者: 作者: 灏天文库 转发
评论区 (0)
U