【问题标题】:Rails SQL : How to search for records with a list of combination valuesRails SQL:如何使用组合值列表搜索记录
【发布时间】:2018-03-29 20:48:32
【问题描述】:

我想在表格中搜索对值列表。 前任。这是一个名字和姓氏的数组。

array = [['jane','doe'],['jack','chen'],['jane','ty'],['mike','ji'],['mike','smith']]

我想在 User 表中搜索这些组合中的每一种。 目前,我只能考虑为每个组合运行一个查询。

array.each do |a|
 User.where("firstname like (?) and lastname like (?)",a[0],a[1])
end

有没有办法在一个查询中运行所有查询? 需要维护组合。

【问题讨论】:

    标签: sql ruby-on-rails arrays


    【解决方案1】:

    以下应该对你有用

    query_string_array = []
    query_array = []
    array.each do |a|
     query_string_array << "(firstname like '%?%' AND lastname like '%?%')"
     query_array << a
    end
    
    User.where(query_string_array.join(" OR "), *query_array.flatten)
    

    【讨论】:

    • 谢谢萨利尔。这个很有用
    猜你喜欢
    • 1970-01-01
    • 2011-04-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-20
    • 2012-06-15
    • 1970-01-01
    • 2016-05-24
    相关资源
    最近更新 更多