Вы можете превратить свой список в вид, подобный этому:
select 'Hello' as word from dual
union all
select 'Goodbye' from dual
union all
select 'Greetings' from dual
union all
select 'Dog' from dual
Тогда вы можете выбрать из этого:
select * from
(
select 'Hello' as word from dual
union all
select 'Goodbye' from dual
union all
select 'Greetings' from dual
union all
select 'Dog' from dual
)
where word not in (select word from words);
Возможно, не такое изящное решение, как вы могли бы надеяться ...
Вы говорите, что у вас недостаточно прав для создания таблиц, поэтому, вероятно, вы также не можете создавать типы - но если вы можете найти подходящий тип "валяющийся" в вашей базе данных, вы можете сделать это:
select * from table (table_of_varchar2_type('Hello','Goodbye','Greetings','Dog'))
where column_value not in (select word from words);
Здесь table_of_varchar2_type
представляет собой имя типа, который определен как:
create type table_of_varchar2_type as table of varchar2(100);
Один такой тип, который вы, вероятно, сможете найти, это SYS.KU$_VCNT
, который представляет собой TABLE OF VARCHAR2 (4000).