PostgreSQL-替代,例如,包含

时间:2018-12-11 12:48:39

标签: sql postgresql

我需要进行模式匹配,但对于多个值,例如:

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

当然,上面的那个不起作用。


关于下面的评论 我没有使用'OR'或建议的正则表达式,因为这样做是在代码中完成的,并且存在一些约束。因此,用array解决方案是我的最佳选择。谢谢。

1 个答案:

答案 0 :(得分:2)

一种简单的方法是只使用or

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

正则表达式是另一种方法:

where a.name ~ '^(aria1|beta5)'