今天要学习的东西……我现在在Mongodb上,阅读the reference manual并尝试自己,我看不到如何匹配嵌入式文档的各个部分。
给了这个小小的植物:
{ "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
答案 0 :(得分:0)
因此我在a related question中找到了答案:我不需要elemMatch
,并且有效的查询可以使用点符号:
db.plants.find({"dap.2016-11" : {$gte: 90}})