【发布时间】:2017-07-02 13:19:35
【问题描述】:
我有一个包含 3 个文档的集合,如下所示:
Collection:
{
name: "A",
arr: [1, 2, 3],
arr1: [4, 5, 6]
},
{
name: "B",
arr: [3, 7, 11],
arr1: [5, 6, 9]
},
{
name: "C",
arr: [3, 4, 5],
arr1: [7, 9, 12]
}
我想在集合中搜索下面的数组。
但所有数组值必须在“arr”或“arr1”字段中匹配。
我的意思是数组值可以在任一字段中,但所有值都必须在文档中。
因此,当我在集合中搜索数组时,只有第二个具有名称:“B”,第三个具有名称:“C”文档应该是结果。
因为在第二个文件中; “arr”字段中的第一个数组值(3)和“arr1”字段中的第二个和第三个数组值(5和9)。在第三个文档中,“arr”字段中的第一个和第二个 (3, 5) 数组值以及“arr1”字段中的第三个数组值 (9)。
Array : [3, 5, 9]
你能帮帮我吗?
【问题讨论】:
-
您的问题太复杂了,无法理解,您能详细解释一下吗?
-
我实际上给出了所有细节,但我可以总结一下。我有一个集合,我想在这个集合中搜索一个数组。结果文档应包含所有数组值。有一个条件,数组值可以是“arr”字段或“arr1”字段中的元素。我在上面举了一个例子,结果将是文档 2 和文档 3。是否有任何查询会给出这个结果?
标签: mongodb mongodb-query aggregation-framework