javascript - 如何通过字段值 mongodb 唯一搜索字段?

标签 javascript node.js mongodb

实际上,我正在尝试通过 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/

相关文章:

javascript - 哪些 Parsely 配置选项为错误/成功设置 CSS 类?

javascript - d3v4 时间线在底部添加日期轴?

node.js - 构建时发出 grunt 警告 (grunt-contrib-compass)

javascript - mongoose findOneAndUpdate 仅附加对象

javascript - mongoosejs 如何对不同的查询进行排序?

javascript - 用于本地编辑的 Vuex 克隆对象

javascript - 如何将其他参数传递给事件

javascript - Webpack 开发服务器抛出错误 - 拒绝执行脚本,因为它的 MIME 类型 ('text/html' )不可执行

javascript - 嵌套 ES6 代理未按预期工作

mongodb - Go 和 MongoDb 错误 : has no field or method