2014-01-25 84 views
0

我有一個連接查詢這樣MySQL的 - 確定是否記錄與左存在連接查詢

$sql = "SELECT * FROM procedures 
     LEFT JOIN doctors 
     ON procedures.ID = doctors.procedure_id"; 

與此加入有可能或不可能在醫生表中的記錄。如果沒有,我通過表單發佈添加記錄。我想要做的只是顯示程序表中沒有醫生表中相關記錄的記錄,所以我的屏幕沒有列出每條記錄。我只關心那些在醫生桌上沒有相關記錄的人。

我試着在查詢的末尾添加

WHERE doctors.notes = '' 

但因爲有表中沒有記錄它不工作。如何通過此連接查詢確定記錄是否存在?我可以寫一個更長的更笨重的查詢,但試圖避免這種情況。

回答

3

doctors.notes不會是空字符串,因爲數據不會存在。這將是NULL

SELECT 
    * 
FROM 
    procedures 
LEFT JOIN 
    doctors 
ON 
    procedures.ID = doctors.procedure_id 
WHERE 
    doctors.procedure_id IS NULL 
+0

花花公子感謝的人,我甚至想嘗試這一點。我應該 :) –