我正在尝试进行distinc查询。我的收藏是readData
{"searchPhrases" : [
"cheap samsung mobile",
"red nokia 2mp"
]
}
{ "searchPhrases" : [
"red peter england shirt",
"redish lee pant"
]
}
我尝试了像db.readData.distinct("searchPhrases",{"searchPhrases":"cheap samsung mobile"});
这样的查询
它让我看起来像[ "cheap samsung mobile", "red nokia 2mp" ]
,但我期待输出像[“廉价三星移动”]。我无法手动迭代它,因为它是搜索的重要数据。它的巨大收藏如此。他们用其他方式使用不同的吗?
答案 0 :(得分:0)
你能使用聚合框架吗?如果是,你可以做下面的事情
db.readData.aggregate(
{ $match: {"searchPhrases": { $in : ["cheap samsung mobile"] } } },
{ $unwind: $searchPhrases },
{ $match: {"searchPhrases": { $in : ["cheap samsung mobile"] } } },
{ $group: { _id:"$searchPhrases" } }
)
这可能不是确切的代码。有关参考资料,请点击此处:
http://docs.mongodb.org/manual/reference/operator/aggregation/unwind/