Mongoid嵌套数组查询

时间:2017-12-11 14:44:35

标签: ruby-on-rails arrays ruby mongodb mongoid

我必须在mongoid数组中查询数组内的值组合。

查询数组示例如下所示:

qa = [["a","b","c"], ["a","b"],["b","c"]]
Model.any_in(:field => qa)

我需要的是:field包含值的所有模型(但也可能是其他模型) 例如,由于查询中的:field,它应该返回["b",'c','d']["b","c"]的模型。

ATM我的解决方案是迭代查询数组并为每个嵌套数组执行any_in,然后组合结果。这当然有效,但现在如果有一个大大增加的查询数组的情况,如大约20k“子阵列”。这花费了太多时间。 到目前为止,我尝试了any_inany_of的组合,所有这些只会让我找到一个解决方案,我可以查询嵌套数组的完全匹配,例如["a","b","c"]中的:field模型1}}

0 个答案:

没有答案