如何使用 MySQL 进行联表查询
MySQL 中的联表查询是一种从多个表中获取数据的技术,通过比较表中的公用列来关联表。
如何执行联表查询
联表查询的语法如下:
<code class="sql">SELECT 列1, 列2, ... FROM 表1 INNER JOIN 表2 ON 表1.公用列 = 表2.公用列</code>
其中:
SELECT语句指定要从表中返回的列。
FROM语句指定要连接的表。
INNER JOIN语句指定连接表的方式。
ON语句指定比较表中公用列的条件。
示例
假设我们有两个表,
学生表和
课程表,它们通过
学生 ID列相关联。要获取所有学生及其参加的课程的名称,我们可以执行以下联表查询:
<code class="sql">SELECT students.name AS student_name, courses.name AS course_name FROM students INNER JOIN courses ON students.student_id = courses.student_id;</code>
其他联表查询类型
除了
INNER JOIN之外,MySQL 还支持以下类型的联表查询: LEFT JOIN:返回左表的全部记录,以及与右表匹配的记录。 RIGHT JOIN:返回右表的全部记录,以及与左表匹配的记录。 FULL JOIN:返回左表和右表的所有记录。
提示
始终指定一个公用列来关联表。 使用别名来区分来自不同表的列。 根据需要使用WHERE子句过滤结果。
