0

こんにちは、私はこの2つのテーブルを持っています

表1

id    Selection  
-------------------
1     John           
2     Ely               
3     Marcus            
4     Steve           
5     Fritz           
6     Orly           
7     Carlo              
8     Lee    

表 2

id    Selected 
-------------------
1     John                         
3     Marcus 
4     Steve                     
5     Fritz           
7     Carlo 

返されるのは選択されていない行です。この出力のクエリは何でしょうか

id    Selection 
-------------------         
2     Ely                         
6     Orly                  
8     Lee
4

3 に答える 3

2

LEFT JOIN両方のテーブルを結合t2.ID IS NULLし、共通のレコードを削除するために使用します

SELECT t1.* FROM table1 t1 
  LEFT JOIN table2 t2 
    ON t1.ID = t2.ID 
 WHERE t2.ID IS NULL

出力:

╔════╦═══════════╗
║ ID ║ SELECTION ║
╠════╬═══════════╣
║  2 ║ Ely       ║
║  6 ║ Orly      ║
║  8 ║ Lee       ║
╚════╩═══════════╝

このSQLFiddleを参照してください

于 2013-07-18T06:57:58.807 に答える
0

このクエリを使用します。それはあなたのために働いた。

select table1.* from table1 where table1.id not in (select id from table2)
于 2013-07-18T08:39:07.120 に答える