首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我能把elemMatch和MongoDB中的点符号结合起来吗?

我能把elemMatch和MongoDB中的点符号结合起来吗?
EN

Stack Overflow用户
提问于 2018-08-13 21:19:01
回答 1查看 109关注 0票数 0

…今天要学什么?我现在使用Mongodb,阅读参考手册并自己尝试,我不知道如何匹配嵌入式文档的各个部分。

鉴于这些微小的植物收藏:

代码语言:javascript
复制
{ "code" : "2016.0461.1", "lon" : -73.8603176593, "lat" : 2.06117398918, 
  "species" : "Pera arborea", 
  "dap" : { "2016-11" : 10 } }
{ "code" : "2011.0154.1", "lon" : -73.8648049304, "lat" : 2.05991990281, 
  "species" : "Terminalia amazonia",  
  "dap" : { "2013-10": 8, "2016-11" : 21 } }
{ "code" : "2006.0065.1", "lon" : -73.8672333008, "lat" : 2.05869146507,
  "species" : "Maquira coriacea",
  "dap" : { "2010-10": 80, "2013-05": 84, "2016-11" : 90 } }

我希望选择所有在2016年11月超过50厘米的树木(在上面的数据中,dap是树的胸径,它是偶尔测量的,所以我预计只有代码2006.0065.1的植物)。

db.plants.find({"dap.2016-11" : 90})给出了预期的结果,但我可以想到的两个查询不起作用:

  • db.plants.count({dap : {"2016-11" : {$elemMatch: {$gte:40}}}})
  • db.plants.count({"dap.2016-11" : {$elemMatch: {$gte: 40}}})

都没有发出错误信号,并且都返回0。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-13 21:29:46

因此,我在一个相关的问题中找到了一个答案:我不需要elemMatch,并且工作查询可以使用点符号:

db.plants.find({"dap.2016-11" : {$gte: 90}})

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51830709

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档