Mongodb mongo点符号歧义

Mongodb mongo点符号歧义,mongodb,syntax,mongodb-query,Mongodb,Syntax,Mongodb Query,我喜欢MongoDB,我觉得有点模棱两可,我想知道以前是否有人见过它,可能知道答案:-) 在mongo中,要进入子对象,可以使用点符号,例如: db.persons.find({ "address.state" : "CA" }) 这很简单。mongo如何(如果有)处理以下两者之间的差异: { "address" { "state" : "CA" } } 及 因为据我所知,圆点在钥匙上是合法的。此外,我相信这也是一份法律文件: { "address" { "state" :

我喜欢MongoDB,我觉得有点模棱两可,我想知道以前是否有人见过它,可能知道答案:-)

在mongo中,要进入子对象,可以使用点符号,例如:

db.persons.find({ "address.state" : "CA" })
这很简单。mongo如何(如果有)处理以下两者之间的差异:

{
    "address" { "state" : "CA" }
}

因为据我所知,圆点在钥匙上是合法的。此外,我相信这也是一份法律文件:

{
    "address" { "state" : "A" },
    "address.state" : "B"
}
在这种情况下,我可以看到此查询返回
“A”
“B”

我想阵列也会出现类似的潜在问题:

{"a":["test"]}
可通过以下方式访问:

{"a.0"}
{"a.0"}
当然

{"a" {"0" : "test"} }
也可以通过以下方式访问:

{"a.0"}
{"a.0"}
想法?经验?难道传统智慧就是不这么做吗?

像“address.state”这样的键是不合法的。发件人:

字段名不能包含点(即
)或空字符,并且不能以美元符号开头(即
$


在mongo shell中尝试这些查询时会发生什么?我查看了mongo站点,但没有看到它,这完全回答了问题:-)。