我有一个WHERE
活动记录查询产生的记录数组。每条记录都有 2 到 16 个字符串作为其属性。我需要查看是否有任何记录包含另一个数组中的所有字符串作为其属性。我怎样才能做到这一点?
字符串示例数组:
["12349", "12IUS823", "4809JDSL"]
相似记录数组中的样本记录
产品
- id1
- id2
- id3
- id4
- id5
- id6
我有一个WHERE
活动记录查询产生的记录数组。每条记录都有 2 到 16 个字符串作为其属性。我需要查看是否有任何记录包含另一个数组中的所有字符串作为其属性。我怎样才能做到这一点?
字符串示例数组:
["12349", "12IUS823", "4809JDSL"]
相似记录数组中的样本记录
产品
假设您可以通过方法获取所有字符串属性的数组strings
。我会检查数组的差异是否为空。它选择至少包含所有字符串的记录arr
arr = ["12349", "12IUS823", "4809JDSL"]
records.select{|x| (arr - x.strings ).empty? }
我想你正在寻找这样的东西......
["12349", "12IUS823", "4809JDSL"].all? { |value| [ id1 , id2 , id3 ].any? { |id| id == value } }