我一直在研究如何使用Mongodb,并且一直坚持在嵌入式文档中查询数据数小时。我在Mongodb的网站上找到了例子:http://www.mongodb.org/display/DOCS/Schema+Design#SchemaDesign-EmbeddingandLinking
然而,当我用自己的数据(例如
)尝试时db.test.save({"name":"record", "items":[{"histPrices":[10,12],"name":"stuff"}]})
db.test.find({items.name:"stuff"})
它永远找不到任何东西,而是给了我一个错误: Fri Nov 2 14:24:09 SyntaxError:missing:属性id(shell):1
任何人对此都有任何提示吗?
答案 0 :(得分:1)
我不确定您使用histPrices.name
的原因。但如果您使用点符号,则应将复杂名称括在引号中。
> db.test.find({'items.name':"stuff"})
{
"_id" : ObjectId("509416a3d78ed5021c34c12d"),
"name" : "record",
"items" : [
{
"histPrices" : [
10,
12
],
"name" : "stuff"
}
]
}