首页 > 数据库 > mysql教程 > 如何在 MySQL 中连接多个表来检索层次结构和关系数据?

如何在 MySQL 中连接多个表来检索层次结构和关系数据?

Linda Hamilton
发布: 2024-12-14 21:01:10
原创
264 人浏览过

How to Join Multiple Tables in MySQL to Retrieve Hierarchical and Relational Data?

连接 MySQL 中的多个表

连接学生表、课程表和桥接表

检索学生姓名和他们学过的课程,我们可以加入三个表:Student、Course、Bridge。 Bridge 表分别通过 sid 和 cid 列建立学生和课程之间的关系。

为清楚起见,使用 ANSI 语法,连接这些表并检索所需结果的正确查询是:

SELECT s.name AS Student, c.name AS Course
FROM Student s
INNER JOIN Bridge b ON s.id = b.sid
INNER JOIN Course c ON b.cid = c.id
ORDER BY s.name;
登录后复制

示例结果:

Student Course
Ahmed Physic
Ahmed Maths
Ahmed Computer
Ahmed Chemistry
Ali Physic
Ali Maths
John Computer
John Chemistry
King Physic
King Maths

加入 Employee 和 Manage 表进行层次结构

要检索经理和员工的层次结构,我们可以加入 Employee 和 Manage分别使用列 id 和 eid 的表。以下是对此的查询:

SELECT e1.name AS Manager, e2.name AS Staff
FROM Employee e1
INNER JOIN Manage m ON e1.id = m.mid
INNER JOIN Employee e2 ON m.eid = e2.id;
登录后复制

示例结果:

Manager Staff
Ali King
Ali Mak
Mak Sam
Sam Jon

以上是如何在 MySQL 中连接多个表来检索层次结构和关系数据?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板