【发布时间】:2013-04-07 11:02:44
【问题描述】:
我想使用内连接从更多表中选择数据。
这些是我的桌子。
Student (studentId, firstName, lastname)
Exam (examId, name, date)
Grade (gradeId, fk_studentId, fk_examId, grade)
我想写一份声明,说明学生参加过的考试、年级和日期。按日期排序。
这是我的声明。它运行,但我想确保我做的正确。
SELECT
student.firstname,
student.lastname,
exam.name,
exam.date,
grade.grade
FROM grade
INNER JOIN student
ON student.studentId = grade.gradeId
INNER JOIN exam
ON exam.examId = grade.gradeId
ORDER BY exam.date
【问题讨论】:
-
其中有什么问题?
-
gradeID 列连接到 studentID 看起来很奇怪?但是,如果您以这种方式放置结构并返回您期望的结果,那么我想这很好...
-
是的,你做得对。虽然它是否有效并给出了预期的结果,但没有太多指向这个问题?
-
在我看来,student.studendId =grade.fk_studentId 和 Exam.examId =grade.fk_examId
标签: mysql database inner-join