是否可以连接没有外键的表? 例如
tblstudent 列:
tblgrade Comluns:
tblfinalgrade 列:
finalgrade
搜索和ID时是否可以查看最终成绩?
答案 0 :(得分:1)
tblStudent
中的ID没有意义,因为您没有在其他表中引用它。更改您的表格结构以包含此StudentId
而不是First Name
和Last Name
。
例如:
<强> tblGrade 强>
列:
<强> tblFinalGrade 强>
然后你可以这样做:
SELECT ID, FirstName, LAstName, Quiz, Project, Exam, FinalGrade
FROM tblStudent
INNER JOIN tblGrade ON tblGrade.StudentId = tblStudent.StudentId
INNER JOIN tblFinalGrade ON tblFinalGrade.StudentId = tblStudent.StudentId
这比加入FirstName
和Last Name
更好的结构只是因为你有5 John Smith
你怎么知道你正在返回正确的成绩?
虽然我对原始设计稍有不同,但您可以通过运行以下查询对现有结构执行相同的查询:
SELECT ID, FirstName, LAstName, Quiz, Project, Exam, FinalGrade
FROM tblStudent
INNER JOIN tblFinalGrade ON tblFinalGrade.FirstName = tblStudent.FirstName AND tblFinalGrade.LastName = tblStudent.LastName
WHERE tblStudent.ID = 1