在 SQL 中,INNER JOIN 是一种常见的关联查询方式,它根据两个表之间的关联条件,将满足条件的行组合在一起。
注意,INNER JOIN 只返回两个表中满足关联条件的交集部分,即在两个表中都存在的匹配行。
示例
使用 INNER JOIN 进行关联查询,根据员工表和部门表之间的公共字段 部门名称(department)
进行匹配,将员工的姓名、工资以及所属部门和部门经理组合在一起:
SELECT e.emp_name, e.salary, e.department, d.manager
FROM employees e
JOIN departments d ON e.department = d.department;
练习:
假设有一个学生表 student
,包含以下字段:id
(学号)、name
(姓名)、age
(年龄)、class_id
(班级编号)。还有一个班级表 class
,包含以下字段:id
(班级编号)、name
(班级名称)、level
(班级级别)。
请你编写一个 SQL 查询,根据学生表和班级表之间的班级编号进行匹配,返回学生姓名(student_name
)、学生年龄(student_age
)、班级编号(class_id
)、班级名称(class_name
)、班级级别(class_level
)。
select
s.name student_name ,
s.age student_age,
s.class_id class_id,
c.name class_name,
c.level class_level
from student s
join class c on s.class_id = c.id;