实际上,我正在尝试通过 field_value
进行不同的搜索。
例如:
{
"_id" : ObjectId("5aa83007d5f5f84350af30c7"),
"_tag" : "hi"
},
{
"_id" : ObjectId("5aa83007d5f5f80450af30c8"),
"_tag" : "hello"
},
{
"_id" : ObjectId("6aa83007d5f5f80450af30c8"),
"_tag" : "hello"
},
{
"_id" : ObjectId("5aa83007d5f5f80450ar30c7"),
"_tag" : "bye"
},
{
"_id" : ObjectId("5aa83117d5f5f80450ar30c7"),
"_tag" : "bye"
}
在此上下文中,以下查询返回 ["hi","hello","bye]
查询:
db.collection("tags").distinct("_tag",function(err, result) {
if(err) throw err;
console.log(result)
db.close();
});
但我要问的是我怎样才能有区别地搜索“hi”或“hello”等值?
最佳答案
您可以尝试使用 $in
只保留您想要的标签,然后使用 $group
$addToSet获得唯一值:
db.tags.aggregate([
{ $match: { "_tag": {$in:["hi","hello"] } } },
{ $group: { _id: null, _tags: { $addToSet: "$_tag" } } }
])
关于javascript - 如何通过字段值 mongodb 唯一搜索字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49266604/