为了账号安全,请及时绑定邮箱和手机立即绑定

根据地图中键的存在性有选择地检索

根据地图中键的存在性有选择地检索

Go
慕的地6264312 2021-05-11 17:46:48
是否有可能根据mongodb中映射中键的存在来有选择地检索?如果是这样,您如何去做呢?假设我有一个看起来像这样的文档。{ "_id": 1234,    "parentfield1" : {        "childfield1" : { ...},        "childfield2" : { ...},        "childfield5" : { ...}, // There might be many childfields.. > 50    },} 给定多种选择,我如何能够从文档中选择性地检索一个/某些特定子字段?其中一些可能在文档中不存在。IEinput "childfield1", "childfield2", "childfield3"-> output { "_id": 1234,  "parentfield1": {      "childfield1" : { ... },      "childfield2" : { ... },  },}它甚至可行吗?也可以有效地做吗?任何帮助都会很棒(python,请执行)。
查看完整描述

1 回答

?
弑天下

TA贡献1818条经验 获得超8个赞

是的,这就是projection参数的目的find:


db.collection.find({_id: 1234}, {

    'parentfield1.childfield1': 1,

    'parentfield1.childfield2': 1,

    'parentfield1.childfield3': 1

});

如果给定文档中没有指定字段,则其他匹配字段仍将包括在内。


projection如果希望它是动态的,则以编程方式构建参数对象。


查看完整回答
反对 回复 2021-05-31
  • 1 回答
  • 0 关注
  • 176 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信