我已經得到了以下兩個SQL表(在MySQL):SQL - 找到一個表中的記錄不存在,在另一
Phone_book
+----+------+--------------+
| id | name | phone_number |
+----+------+--------------+
| 1 | John | 111111111111 |
+----+------+--------------+
| 2 | Jane | 222222222222 |
+----+------+--------------+
Call
+----+------+--------------+
| id | date | phone_number |
+----+------+--------------+
| 1 | 0945 | 111111111111 |
+----+------+--------------+
| 2 | 0950 | 222222222222 |
+----+------+--------------+
| 3 | 1045 | 333333333333 |
+----+------+--------------+
如何找出電話由人,他們的製作phone_number
是不是在Phone_book
?期望的輸出將是:
Call
+----+------+--------------+
| id | date | phone_number |
+----+------+--------------+
| 3 | 1045 | 333333333333 |
+----+------+--------------+
任何幫助將不勝感激。
避免,使用EXISTS - 該提示是在問題的標題 – annakata 2008-12-15 12:02:11
左外連接可能是最快的,一般情況下,它可以防止重複的執行子查詢。 – WOPR 2008-12-15 21:40:40
不挑剔,但我的建議子查詢返回
select 'x'
而不是select *
– Alterlife 2008-12-17 08:36:39