Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我在 mongo 数据库中有一个子对象,其中包含空格的字段,例如:
{name: "John Doe", subdata: {"Field 1": "Something", "Field 2": "Something else"}}
据我所知,mongo 允许字段 1 和字段 2,但我无法找到任何指示如何构造查询以查找 subdata.Field 1。有没有办法我可以在我的示例中搜索字段 1 和字段 2,还是应该重组数据以消除空格?
除非我误解了你的问题,否则你可以这样做:
db.test.find({ "subdata.Field 1" : 'Something' } );
好吧,我不了解 pymongo,但是许多其他语言的库都提供对象-文档映射功能。我敢打赌你也会遇到这个问题,因为“字段 1”在我听说过的每种语言中都是无效的标识符。
我的建议:去掉空格,你会在未来节省大量时间。
空格是 Mongo 字段名称的有效字符。
字段名称限制
字段名称不能包含点(即.)或空字符(即\0),并且它们不能以美元符号(即$)开头。
所以这种查找应该像一个魅力:
db.collection.find({"subdata.Field 1": {$exists: true}})