MySQL 学习手册

免费学习 完整知识体系 快速检索 MySQL 8.0

MySQL 学习手册《通用表表达式 (CTE)》:CTE 使复杂查询更清晰,可递归。 WITH dept_avg AS ( SELECT department, AVG(salary) AS avg_sal FROM employees GROUP BY depa...

高级特性

通用表表达式 (CTE)

【详细说明 & SQL 示例】
CTE 使复杂查询更清晰,可递归。
WITH dept_avg AS (
    SELECT department, AVG(salary) AS avg_sal
    FROM employees
    GROUP BY department
)
SELECT e.name, e.salary, d.avg_sal
FROM employees e
JOIN dept_avg d ON e.department = d.department
WHERE e.salary > d.avg_sal;

-- 递归 CTE(用于层级查询)
WITH RECURSIVE tree AS (
    SELECT id, name, manager_id, 1 AS level
    FROM employees
    WHERE manager_id IS NULL
    UNION ALL
    SELECT e.id, e.name, e.manager_id, t.level + 1
    FROM employees e
    JOIN tree t ON e.manager_id = t.id
)
SELECT * FROM tree;

学习提示:建议在 MySQL 命令行或图形客户端(如 Navicat、DBeaver)中执行示例 SQL,观察结果,加深理解。

全部章节目录(共 57 个知识点)

数据类型 (1个知识点)

子查询 (2个知识点)

视图 (1个知识点)

存储过程与函数 (2个知识点)

触发器与事件 (2个知识点)

使用说明

  • • 本手册涵盖 MySQL 从入门到进阶的完整知识体系
  • • 在搜索框输入关键词,快速定位相关知识点
  • • 点击条目标题进入详情页,查看详细说明与 SQL 示例
  • • 页面按分类展示所有知识点,方便系统性学习
  • • 建议在 MySQL 环境中执行示例 SQL,观察结果加深理解