unionを使用できます 都市のテーブルを作成してからminus 演算子。
select 'Dallas' as city from dual union all
select 'Berlin' as city from dual union all
select 'Cracow' as city from dual union all
select 'Praha' as city from dual
minus
select city from address
ユニオンの代わりに、事前定義されたタイプodcivarchar2listを使用できます。 、構文を短縮します:
select column_value as city
from table(sys.odcivarchar2list('Dallas', 'Berlin', 'Cracow', 'Praha'))
minus
select city from address
...そしてminusの代わりに 結合を使用することも、not inを使用することもできます またはnot exists 。
両方のクエリのテストデータと出力:
create table address (id number, city varchar2(10));
insert into address values (1, 'Rome');
insert into address values (2, 'Dallas');
insert into address values (3, 'Cracow');
insert into address values (4, 'Moscow');
insert into address values (5, 'Liverpool');
insert into address values (6, 'Cracow');
insert into address values (7, 'Seoul');
CITY
------------
Berlin
Praha