如何使用内部联接显示两个匹配的列,它们在第三张表中通过其他两列相互关联?

时间:2019-04-19 00:19:39

标签: sql inner-join

我在SQL中具有以下表格:


学生:

primary key: student_id
name
email

课程:

primary key: course_id    
name

注册:

primary key: registration_id
start_date    
foreign key: student_id    
foreign key: course_id

我想要什么:Sql显示一个将学生姓名课程名称相关联的表,如下所示:

student name | course name    
john         | computer science    
alex         | architecture    
daisy        | engineering

我听说我需要使用内部联接来做到这一点。

1 个答案:

答案 0 :(得分:2)

确实需要INNER JOIN

SELECT s.name, c.name
FROM students s
JOIN registration r ON r.student_id = s.student_id
JOIN courses c ON c.course_id = r.course_id

这里有个小demo on dbfiddle ...