PostgreSQL ilike在Rails ActiveRecord中有多个匹配

Sev*_*rin 8 ruby postgresql ruby-on-rails rails-activerecord

我试图通过以下查询从我的数据库中检索多个记录:

User.where('name ilike ?','%thomas%')
Run Code Online (Sandbox Code Playgroud)

这很好用.现在我想同时检索多个记录并尝试这个(这似乎在语法上是不正确的):

User.where('name ilike any',['%thomas%','%james%','%martin%'])
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

所以只是为了澄清:我想要检索与其中一个名称匹配的所有记录,因此它是我正在寻找的OR语句.

Deb*_*att 30

你可以做到

User.where('name ilike any ( array[?] )',['%thomas%','%james%','%martin%'])
Run Code Online (Sandbox Code Playgroud)