- 表学生将Student.student_name映射到Student.student_id
- 表类(class)将Course.course_name映射到Course.course_id
- 表Enrollment将Enrollment.student_id映射到Enrollment.course_id(我听说这被称为联接表.)
给定学生姓名后,将返回其类(class)名称列表的 SELECT 语句是什么?我想这可能是其中的一部分:
SELECT c.course_name FROM Course c
INNER JOIN Enrollment e ON c.course_id = e.course_id
...
WHERE s.student_name = 'Tom';
除此之外,我一无所知。
(这不是作业,只是工作问题的简化。)
最佳答案
SELECT c.course_name FROM Enrollment e
INNER JOIN Course c ON c.course_id = e.course_id
INNER JOIN Student s ON s.student_id = e.student_id
WHERE s.student_name = 'Tom';
还有
SELECT c.course_name
FROM Enrollment e, Course c, Student s
WHERE c.course_id = e.course_id
AND s.student_id = e.student_id
AND s.student_name = 'Tom';
关于mysql - 使用 "join table"的 SQL SELECT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17636943/