postgre 一个字段多个值的模糊查询

postgre里想写个模糊查询。
比如下面这种、我想匹配的值还有很多、但是都是对这一个字段(table.student)的匹配、有什么简单的写法吗?

...
where
  table.student like %123%
  or table.student like %456%
  or table.student like %789%
...

望采纳!点击该回答右侧的“采纳”按钮即可采纳!!!
我觉得兄弟你可以使用 "ILIKE" 操作符来实现模糊匹配,并且它会忽略大小写。
你还可以使用 "IN" 操作符来构建一个包含多个模糊匹配值的列表,这样可以减少查询的代码量。

代码如下:

...
where table.student ILIKE ANY (ARRAY['%123%', '%456%', '%789%'])
...

select *
from table
where regexp_replace(table.student, '123|456|789', '','g') != table.student

望采纳。