【问题标题】:How to find Object inside array in mongoose?如何在猫鼬的数组中找到对象?
【发布时间】:2022-01-19 20:02:20
【问题描述】:

这就是数据库的样子

[
//document1
    {
        "email": "raj@gmail.com",
        "cart": [
            {
                "id": 4,
                "name": "Pen",
            }
        ]
    },
//document2
    {
        "email": "vishal21@gmail.com",
        "cart": [
            {
                "id": 42,
                "name": "Ball",
            }
        ]
    }
]

如何编写猫鼬查询以使用电子邮件在特定文档中查找购物车内的商品。 例如,我需要 id 为 4 的项目,该项目位于带有电子邮件“raj@gmail.com”的文档的购物车中

  1. 使用电子邮件“raj@gmail.com”查找文档
  2. 在购物车数组的文档中找到 ID 为“4”的商品

【问题讨论】:

    标签: node.js database mongodb mongoose mongodb-query


    【解决方案1】:

    您可以尝试运行此查询

      db.collection.find({
      email: "raj@gmail.com",
      cart: {
        $elemMatch: {
          id: 4
        }
      }
    })
    

    我首先使用电子邮件地址进行了查询。然后在数组中我使用elemMatchobj 匹配id

    【讨论】:

      猜你喜欢
      • 2019-03-28
      • 2014-01-14
      • 1970-01-01
      • 2021-08-16
      • 2022-01-16
      • 2023-01-22
      • 2021-04-03
      • 2021-10-15
      • 1970-01-01
      相关资源
      最近更新 更多