以下のような2つのPKを持つテーブル同士で、お互いに存在しないPKのデータを抽出するときのSQLを教えて下さい。
以下のデータの場合、テーブルAではCODE_1がAAAAAのデータ、テーブルBではCODE_1がCCCCCのデータのことを指します。
[テーブルA]
CODE_1 CODE_2
----- ---
AAAAA 123
BBBBB 123
[テーブルB]
CODE_1 CODE_2
----- ---
BBBBB 123
CCCCC 123
PKがCODE_1だけの場合は、
select distinct テーブルA.CODE_1
from テーブルA,テーブルB
where テーブルA.CODE_1 not in (
select テーブルA.CODE_1
from テーブルA,テーブルB
where テーブルA.CODE_1 = テーブルB.CODE_1)
で、AAAAAが抽出できるとこまでは分かったんですが、複数のPKになったらいきなり分からなくなってしまいました。
どうかよろしくお願いします。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
oracleは、次のような感じで、複数要素のin条件が書けます。
where (a,b,c) in ((1,2,3),(4,5,6))
where (a,b,c) in (select A,B,C from hoge)
なので、要素が増えても支障はありません。
ただし、今使われているSQLは、合理的でないような気がします。
素直に、
select code_1 from A
where exists(select 1 from B where A.code_1=B.code_1)
union
select code_1 from B
where exists(select 1 from A where B.code_1=A.code_1)
;
とかで良いように思いますが。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
GROUP BYを行った後に結合した...
-
select insertで複数テーブルか...
-
MERGE文を単体テーブルに対して...
-
SQLについての質問
-
SQLでの条件抽出方法の記述
-
select句副問い合わせ 値の個...
-
SQLで集計キー毎の最大値を求め...
-
固定値を含む結合と複数テーブ...
-
実績累計の求め方と意味を教え...
-
ADO接続からのACCESSデータシー...
-
固有レコード識別子の選択とは
-
使うべきでない文字。
-
アクセスで「空き番」の確認
-
エクセルデータの末尾の改行を...
-
SQLServerからエクセルにデータ...
-
WHERE句でのデータ型について
-
[VBA] ADOの Clone と AddNew
-
Excelで、改行がある場合の条件...
-
Order by句でバインド変数を使...
-
sqlplusの処理が途中でとまる
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
GROUP BYを行った後に結合した...
-
select insertで複数テーブルか...
-
select句副問い合わせ 値の個...
-
SELECTの結果で同一行を複数回...
-
固定値を含む結合と複数テーブ...
-
MERGE文を単体テーブルに対して...
-
oracleの分割delete
-
外部結合とor条件混在の記述方法
-
複数テーブルのMAX値の行データ...
-
他のテーブルを参照した値はupd...
-
SET句内で複数の条件を指定して...
-
unionの結果は集計はできないで...
-
SQLの書き方(チェックボックス)
-
unionでマージした副問合せを結合
-
SQL GROUPで件数の一番多いレコ...
-
DELETE 文とEXISTSの使い方につ...
-
COUNTの取得方法(?)について...
-
副問い合わせのinsert文
-
集計後の数値が倍になる
-
Access 2つのテーブルで数量...
おすすめ情報