U kunt union . gebruiken om een tabel met steden te maken en dan minus telefoniste.
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
In plaats van unie kunt u het vooraf gedefinieerde type odcivarchar2list . gebruiken , wat de syntaxis verkort:
select column_value as city
from table(sys.odcivarchar2list('Dallas', 'Berlin', 'Cracow', 'Praha'))
minus
select city from address
... en in plaats van minus Je kunt joins gebruiken of not in of not exists .
Testgegevens en uitvoer van beide zoekopdrachten:
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