gpt4 book ai didi

javascript - 什么查询选择器找不到与另一个数组中的任何项目匹配的任何数组项目?

转载 作者:行者123 更新时间:2023-11-30 12:08:08 24 4
gpt4 key购买 nike

是否有一个 mongo 查询选择器允许我检索每个文档,其中在一个数组字段中,至少一个项目与另一个数组中的至少一个项目匹配?

假设我有一个 mongo 文档,在 reference 字段中有一个字符串数组

reference: [
"foo",
"bar",
"or",
"not"
]

我想选择所有文档,在这些文档中,我可以在引用数组字段中找到与我在另一个数组中的任何项目相匹配的 javascript 变量(我们称之为 target)

  var  target= [
"yes",
"but",
"not ",
"yet"
];

在这个例子中它会匹配,因为 not 在两个数组中。

我知道如果我只在 mongo 数组中寻找一个元素,我可以使用 $in 来做到这一点。但是,我宁愿避免迭代我的 target 数组来查找它包含在 reference 数组中的每个项目。

最佳答案

您可以使用 $elemMatch结合 $in 得到你想要的结果:

find({reference: { $elemMatch: { $in : target } } });

关于javascript - 什么查询选择器找不到与另一个数组中的任何项目匹配的任何数组项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34593345/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com