Получение входного списка фильтра WHERE IN для SQL QUERY из файла или локальной таблицы - PullRequest
0 голосов
/ 20 ноября 2018

У меня есть простой SQL-запрос. Однако в запросе есть фильтр where, который принимает список.

Список содержит не менее 2000 элементов, и вставлять длинный список в сам запрос становится крайне неудобно.

Я пытался найти, могу ли я создать таблицу / файл и вместо этого вызвать это в запросе.

ПРИМЕРНЫЙ КОД:

Select * from Table_XXXX where  aa = 'yy'  and date > zzz  and mylist = [..............]

Поэтому вместо приведенного выше списка я хотел бы вызвать файл (локально), в котором находятся элементы списка, или таблицу (локально, а не в базе данных), в которой элементы находятся в столбце ...

Любая помощь будет оценена.

1 Ответ

0 голосов
/ 20 ноября 2018

Сначала вы должны сохранить содержимое файла / списка в таблице.И после этого вы можете использовать в состоянии

create table mylist(x int);
insert into mylist values(<all values in your file>);

select * 
  from Table_XXXX tt
 where tt.aa = 'yy' 
   and tt.date > zzz 
   and tt.mylist IN (select x from mylist)
...