使用「SELECT * WHERE NOT EXISTS」識別失蹤員工
目前的任務涉及從一張表(員工)中識別其姓名的員工不會出現在另一個表(eotm_dyn)。目標是檢索 eotm_dyn 表中缺勤的員工清單。
使用「NOT EXISTS」運算子
使用「NOT EXISTS」運算子在提供的查詢中確定員工表中的記錄是否缺少eoeotm_dyn 表中的對應條目。語法如下:
SELECT * FROM employees WHERE NOT EXISTS ( SELECT name FROM eotm_dyn WHERE employees.id = eotm_dyn.employeeID )
解決錯誤
由於關鍵的遺漏,原始查詢沒有返回任何結果:員工之間缺少聯接和 eotm_dyn 表。為了解決這個問題,必須指定連線條件。最簡單的選擇是在公共欄位上連接表,該欄位似乎是employeeID。
更正的查詢
合併連接條件,更正的查詢將變為:
SELECT * FROM employees e WHERE NOT EXISTS ( SELECT NULL FROM eotm_dyn d WHERE d.employeeID = e.id )
此查詢將傳回僱員表中缺少eotm_dyn表的所有僱員,完成了最初尋找失蹤員工的任務。
以上是如何使用 SQL 的 NOT EXISTS 運算子尋找失蹤員工?的詳細內容。更多資訊請關注PHP中文網其他相關文章!