2017-01-17 10 views
2

各テーブルに2つのテーブル(1つのメインテーブルと1つの補足テーブル)がID#を持っています。いくつかのID#は両方のテーブルに表示されますが、いくつかは表示されません。補足テーブルとメインテーブルにID#が表示されているかどうかを示す/新しいフィールド(Bothという名前)にフラグを立てる必要があります。2つのテーブルを使用したSQLのIFステートメントまたはフラグ

私はSQLを使い慣れていてIF文を知っていますが、複数の表を使用してそれを使用することで成功しませんでした。

メインテーブル

ID# | Fruit      
1  | apple       
2  | peach      
3  | orange 
4  | pear 

補足表

ID# | Fruit 
3  | orange 
4  | pear 

任意の助けいただければ幸いです! -Newb

+0

? –

+2

あなたはどのDBMSを使用していますか? –

+0

期待される出力は? –

答えて

0

あなたはleft joinを使用して、補助的なテーブルのIDにcase表現できます:あなたはSQLのどのバージョンを使用している

SELECT m.id, 
      m.fruit, 
      CASE WHEN s.id IS NOT NULL THEN 'yes' ELSE 'no' END AS both 
FROM  main m 
LEFT JOIN supplementary s ON m.id = s.id 
+1

これは完全に機能しました。みんなに感謝する – ddot201

関連する問題