field_name中的Mongoose筛选器对象

ogq8wdun  于 2022-11-13  发布在  Go
关注(0)|答案(3)|浏览(142)

enter image description here
我想按用户名列出汽车,我该怎么做?

pxiryf3j

pxiryf3j1#

若要从其他文件筛选文件,您需要使用填入字段。
为此,我们使用aggregate.在lookup中;我们将汽车字段与用户字段连接,以获得用户字段的值,如用户名等。

**在MongoDB Compass中,您需要使用页面左下方的MONGOSH。**首先,需要获得您要进行过滤的数据库。为此,

use arpaslanOto

现在,您切换了数据库。当前数据库是alparslanOto。然后将您要在该字段上搜索的过滤器写为;

db.cars.aggregate([
          {
            $lookup: {
              from: "users",
              localField: "user",
              foreignField: "_id",
              as: "UserCarTable",
            },
          },
          {
            $match: { "UserCarTable.username": username },
          },
        ];
    )

希望对你有用

2g32fytz

2g32fytz2#

enter image description here
使用您建议的方法,响应返回空。

mm9b1k5b

mm9b1k5b3#

db.cars.aggregate([
        {
          $lookup: {
            from: "users",
            localField: "user",
            foreignField: "_id",
            as: "cars",
          },
        },
        {
          $match: { "cars.name": "Mustafa" },
        },
      ])

工作中!!

相关问题