• ベストアンサー

【SQL】あるマスタのレコードに存在しない項目を取得する。

下記のような2つのマスタがあるとします。 ・商品名マスタ 商品コード  商品名 - - - - - -  - - - - - - n01       ナス k01       カボチャ n02       ニンジン t01       タマネギ ・購入履歴マスタ 履歴連番  商品コード  購入日時 - - - - -   - - - - - -  - - - - - - 001     n01      2008-07-01 002     k01      2008-07-02 003     n01      2008-07-03 004     n01      2008-07-04 005     k01      2008-07-04 このとき、購入履歴マスタのレコードに存在しない商品を取得するSQLはどのように組み立てればよいでしょうか? 例えば上記例で言えば、下記のような結果を得ることが目的です。 商品コード  商品名 - - - - - -  - - - - - - n02       ニンジン t01       タマネギ 以上、よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • tokonoko
  • ベストアンサー率100% (1/1)
回答No.2

こんにちは。 SELECT 商品名マスタ.商品コード , 商品名マスタ.商品名 , 購入履歴マスタ.商品コード FROM 商品名マスタ LEFT JOIN 購入履歴マスタ ON 商品名マスタ.商品コード = 購入履歴マスタ.商品コード WHERE ((購入履歴マスタ.商品コード) Is Null); でどうですか。

kyonn2008
質問者

お礼

ありがとうございました

その他の回答 (1)

回答No.1

RDBMS名、バージョンが明記されていないので、具体的なSQLは提示しません。 次のような方法があります。 (1)not exists (2)not in (3)left joinで結合キーがnullの行

kyonn2008
質問者

お礼

ありがとうございました

関連するQ&A