如何将ILIKE用于Rails中单列中的多个值?

时间:2019-05-30 14:27:00

标签: ruby-on-rails activerecord

如何对单个列中的多个值使用ILIKE。

这是不使用类似条件的多个值的解决方案:

Project.where(name: ["Arvind Oasis", "Prestige Jindal City"])

在此示例中,它采用了我数据库中的完全匹配项。但我想对所有值进行类似的匹配。

如何将 ILIKE 用于多个值 [“ Arvind Oasis”,“ Rajkumar Jindal City”]

对于单个值,我可以这样使用

Project.where("name ILIKE ?", "%Prestige Kumar%")

2 个答案:

答案 0 :(得分:5)

使用:

Project.where("name ILIKE ANY (array[?])", ["%Arvind Oasis%", "%Prestige Jindal City%", "%XXXX%"])

答案 1 :(得分:2)

您可以尝试使用如下所示的postgres SIMILAR TO运算符

  

Project.where(“名称类似于   '%(Arvind \ sOasis | Rajkumar \ sJindal \ sCity)%'“)