2016-11-21 9 views
0

私はこのようになりますよう、MySQLのテーブルを持っている:私は次のID aのどの、bcdを確認したい(My)SQLテーブルに存在しないIDのリストを取得するには?

+----+ 
| id | 
+----+ 
| a | 
| c | 
| e | 
+----+ 

eは、テーブルに存在しません。

意味、ids bdのリストを取得したいと思います。

私は実際に新しい第2の永久SQLテーブルを作成せずに、私のテーブルに存在しないIDのリストを返す手で構築することができますか?

+0

どのRDBMS ...を使用していますか? – Mansoor

+0

タイトルと質問が指定されているため、 MySQL =) – corgrath

答えて

1

これは通常left joinまたはこのようなものを使用して行われます:

select ids.id 
from (select 'a' as id union all select 'b' union all select 'c' union all 
     select 'd' union all select 'e' 
    ) ids 
where ids.id not in (select id from t); 

リストがテーブルにすでに存在する場合は、あなたの代わりに派生テーブルのテーブル(または副問合せ)を使用することができます。

関連する問題