使用LEFT JOIN 尋找不存在的資料
在SQL 中,可能需要比較兩個表格並識別一個表格中存在的資料但不是另一個。在檢查遺失的記錄時,通常會遇到這種情況。
請考慮以下表格:
TABLE1
id | name | address |
---|---|---|
1 | mm | 123 |
2 | nn | 143 |
TABLE2
name | age |
---|---|
mm | 6 |
oo | 9 |
TABLE2
是找到將TABLE1 與TABLE2 進行比較,找出TABLE1 中不存在的名稱。在這種情況下,TABLE1 中名為「nn」的第二行在 TABLE2 中不存在。 使用 INNER JOIN 的初始嘗試:SELECT w.* FROM TABLE1 w INNER JOIN TABLE2 v ON w.name <> v.name
SELECT w.* FROM TABLE1 w LEFT JOIN TABLE2 v ON w.name = v.name WHERE ISNULL(v.name);
id | name | address |
---|---|---|
2 | nn | 143 |
此查詢成功從 TABLE1 擷取名稱不存在的「nn」行。
以上是SQL 中的 LEFT JOIN 如何識別一個表中存在的資料而不是另一個表中的資料?的詳細內容。更多資訊請關注PHP中文網其他相關文章!