TesMテーブル Code ---- 100 120 200 250 TesKテーブル A01 A02 A03 A04 A05 A06 A07 A08 A09 A10 --- --- --- --- --- --- --- --- --- --- 100 100 100 100 200 100 100 100 100 120 200 200 200 200 200 200 200 200 200 200 TesMテーブルに登録されてるCodeの中で、 TesKテーブルのA01からA10までに登録されてないCodeを出力する。 出力結果 Code ---- 250
create table TesM(Code number(3)); insert into TesM values(100); insert into TesM values(120); insert into TesM values(200); insert into TesM values(250); Create table TesK( A01 number(3), A02 number(3), A03 number(3), A04 number(3), A05 number(3), A06 number(3), A07 number(3), A08 number(3), A09 number(3), A10 number(3)); insert into TesK values(100,100,100,100,200,100,100,100,100,120); insert into TesK values(200,200,200,200,200,200,200,200,200,200); commit;
select Code from TesM a where not exists(select 1 from TesK b where a.Code in(b.A01,b.A02,b.A03,b.A04,b.A05, b.A06,b.A07,b.A08,b.A09,b.A10));
exists述語とin述語を組み合わせてます。