gpt4 book ai didi

mongodb - 查询数组中的部分对象 - MongoDB

转载 作者:可可西里 更新时间:2023-11-01 09:59:43 24 4
gpt4 key购买 nike

我有一个像这样的简单结构化文档:

"people" : [
{
"id" : "6241863",
"amount" : 5
}
],

People 可以包含多个元素。我已经设法让这个工作:

db.village.findOne({"people": {"$in": [{"id": "6241863", "amount": 5}]}})

但我想忽略金额并搜索任何包含 ID 为 6241863 的人和任何金额的文档。

最佳答案

根据advanced query documentation ,您可以将数组值查询与 dot notation for reaching into objects 混合使用.下面是一个使用您的架构的示例:

$ mongo
MongoDB shell version: 2.1.0
connecting to: test
> db.users.save({_id: 1, friends: [{id: 2, name: 'bob'}]})
> db.users.find({friends: {id: 2, name: 'bob'}})
{ "_id" : 1, "friends" : [ { "id" : 2, "name" : "bob" } ] }

> db.users.find({'friends.id': 2})
{ "_id" : 1, "friends" : [ { "id" : 2, "name" : "bob" } ] }

> db.users.find({'friends.name': 'bob'})
{ "_id" : 1, "friends" : [ { "id" : 2, "name" : "bob" } ] }

> db.users.find({'friends.name': 'ted'})
>

关于mongodb - 查询数组中的部分对象 - MongoDB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11414300/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com