我有四個表是這樣的:加入特定的按鍵不靈
- 學年(ID)
- 學生(ID,schoolyear_id)
- 測試(ID)
- grade(id,test_id,student_id數據,得分)
學生與schoolyear
(通過FK關聯),其級別與test
和student
通過FK的關聯。
我希望無論如何都要返回某個特定學年的所有學生,並且如果該學生存在,則可以加入該學生的測試score
以及所有其他字段。如果不是,則score
字段應該爲空。這是我有什麼:
SELECT *, `student`.`id` as `studentid`
FROM `student`
LEFT JOIN `grade` ON `grade`.`student_id` = `student`.`id`
WHERE `student`.`schoolyear_id` = ?
我目前的聲明中沒有任何內容告訴它一個特定的測試,但這就是我想要的。
您能提供樣本數據和期望的結果嗎?有點困惑,因爲要理解。 – sgeddes
@sgeddes我希望學生表中的每個字段以及來自該測試的字段「評分」。 – ncf