сравнить входной массив и данные из таблицы postgres - найти одинаковые - PullRequest
0 голосов
/ 14 мая 2018

Например, у меня есть массив имен:

['andrew','vasya','oleg'] 

Также у меня есть некоторые данные в БД:

name    age   id
andrey  12    23432
andrew  13    32432

Я хочу проверить одним запросом получить все значения, которые существуют вБД с тем же именем, что и в массиве.Он должен вернуть мне ['andrew'] ответ.Это означает, что в моем массиве есть одно и то же значение, что и в столбце name в дБ.Могу ли я сделать это?

Я могу сделать это следующим образом: получить все значения из БД и сравнить их, используя какой-то цикл сортировки, но это будет медленно.

1 Ответ

0 голосов
/ 14 мая 2018

Для этого можно использовать оператор = ANY:

select *
from the_table
where name = any (array['andrew','vasya','oleg'] );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...