【发布时间】:2020-05-16 10:28:18
【问题描述】:
我有一个带有“数据库”的集合,其中有一个包含对象的数组......我正在尝试使用他的关键字在这些对象中搜索,并且我只得到 1 个对象返回,我想返回所有包含关键字的
搜索代码
Database.find({ 'data.words' : { "$in" : ["facebook"]}}, { 'data.$': 1, });
数据结构示例
{
"_id" : ObjectId("5e331a85ec9a8548744899a9"),
"uuid" : "XXXXX",
"data" : [
{
"words" : ["facebook"],
"status" : 0,
"uid" : "XXXXX",
"details" : {}
},
{
"words" : ["youtube", "facebook"],
"status" : 0,
"uid" : "XXXXX",
"details" : {}
}
}
【问题讨论】:
-
不清楚,你期待什么结果。请提供一个示例退货文件。
-
我想接收数组中包含关键字的所有对象...
-
所以您想在返回的文档中接收过滤结果?
-
也许只是
find({ 'data.words' : "facebook"}, { "data": 1})? -
最好能包含 3-4 个具有自己的 "uuid" 的顶级对象:"XXXXX" 然后用 2-3 个示例说明您想要的返回对象是什么。它只是 uuid 还是内部匹配数组或内部匹配数组以及 uuid?