MongoDB 查询如何返回数组型数据?

 雨之夜惊恐_136 发布于 2022-10-26 12:56

例如这样的数据:

{
  "name": "Bob"
  "friends": [
    {
      "name": "Lucy",
      "age": 18
    },
    {
      "name": "David",
      "age": 17
    }
  ]
}

我希望返回这样一个 list: ["Lucy", "David"]

其实说白了,我需要用这个返回的结果进行二次查询,比如查询 Lucy 和 David 的信息。

2 个回答
  • mongo 支持js语法,所以你可以用js的能力来修剪数据

    > db.b.insert({
                  "name": "Bob",
                  "friends": [
                    {
                      "name": "Lucy",
                      "age": 18
                    },
                    {
                      "name": "David",
                      "age": 17
                    }
                  ]
                })
                
    WriteResult({ "nInserted" : 1 })
    > db.b.findOne({name:"Bob"}).friends.map( x => x.name )
    [ "Lucy", "David" ]
    2022-10-27 01:06 回答
  • 限制fields,db.DATA.find({ }, { "name" : 1 })

    2022-10-27 01:06 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有