PostgreSQL - альтернатива как в, содержит - PullRequest
0 голосов
/ 11 декабря 2018

Мне нужно сделать сопоставление с шаблоном, но для нескольких значений, что-то вроде:

select *
from account as a
where lower(a.name) like in ('aria1%', 'beta5%')

Конечно, вышеприведенный не работает.


Что касается комментариев ниже IЯ не использовал 'ИЛИ' или предложенное регулярное выражение, потому что это сделано в коде, и у меня есть некоторые ограничения.Так что решение с array - лучший вариант в моем случае. Спасибо.

1 Ответ

0 голосов
/ 11 декабря 2018

Простой метод - просто использовать or:

select *
from account as a
where lower(a.name) like 'aria1%' or
      lower(a.name) like 'beta5%';

Регулярные выражения - это еще один метод:

where a.name ~ '^(aria1|beta5)'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...