我有3个表...SQL选择行,其中从链接表中的所有行具有在列中的相同值x
- 检验(A)
- Inspection_Vehicle(B)
- Inspection_Vehicle_Defect(C)
我想从一个返回所有行时由C所有链接行中列有的值Checklist_Result_ID
表C包含一个链接到表B - Inspection_Vehicle_ID的列。 表B包含一个链接到表A - Inspection_ID的列。
我想要做这样的事情:
SELECT DISTINCT A.* FROM Inspection AS A
LEFT JOIN Inspection_Vehicle AS B ON B.Inspection_ID = A.Inspection_ID
LEFT JOIN Inspection_Vehicle_Defect AS C ON C.Inspection_Vehicle_ID = B.Inspection_Vehicle_ID
WHERE C.Checklist_Result_ID = 6;
除了我只想要结果时ALL在C联行具有C.Checklist_Result_ID = 6。
例如,当表C有以下行:
ID Inspection_Vehicle_ID Checklist_Result_ID
5 1001 6
6 1001 6
7 1001 6
8 1001 5
......然后,我不想从A行任何时候A.Inspection_ID = B.Inspection_ID AND B.Inspection_Vehicle_ID = 1001
但是,如果C.Create_Result_ID = 6在C中的所有链接行中,我希望这些记录。
如果没有链接行,该怎么办? –