Я пытаюсь выбрать элементы из таблицы, когда какие-либо значения из списка появляются в массиве в таблице.
list_id_array - это массив идентификаторов, идентифицирующих, в какие списки включен элемент. Целые числа - это отдельные идентификаторы списков, которые я хотел бы сравнить с массивом для каждой строки, совпадающие, когда любое из целых чисел включено в list_id_array. ,
Вот рабочий пример с одним значением:
SELECT *
FROM my_table
WHERE
1163650 IN
UNNEST(list_id_array)
Это работает как нужно. Тем не менее, я хотел бы проверить несколько идентификаторов. Например, в дополнение к 1163650 я мог бы также хотеть проверить 654321 и 123456 и выбрать элементы, которые включают любое из этих значений в list_id_array.
Итак, пример, который не работает, который может лучше описать то, что я ищу:
SELECT *
FROM my_table
WHERE
/*any of the below*/
(1163650, 123456, 654321) IN
UNNEST(list_id_array)
Как я могу это сделать? Я выполнил собственный поиск, но у меня возникли проблемы с поиском чего-либо, что не относилось к нескольким значениям параметра после IN, а не до.