当Value在子词典中时,PyMongo查找词典值

时间:2014-12-07 08:54:45

标签: python mongodb dictionary pymongo

我是Python和MongoDB的新手,所以请原谅可能是个愚蠢的问题。

我在MongoDB中有以下记录。 Lars Torsk是该唱片的名字和姓氏。 Gunnar Torsk是Lars父亲的名字和姓氏。

{
    '_id': ObjectId('54840b59b6a1b322b042bde0'), 
    'First Name': 'Lars', 
    'Father': {'Last Name': 'Torsk', >'First Name': 'Gunnar', '_id': ObjectId('54840b59b6a1b322b042bddf')}, 
    'Aliases': ['rass'], 
    'Last Name': >'Torsk'
}

如果我想找到名字为Lars的人的所有记录,我会使用:

for person in people.find({'First Name': 'Lars'}):
    print(person)

但是,如果我想查找有父亲名字为Gunnar的人的所有记录,我会写什么?

我试过了:

for person in people.find({'Father': {'First Name': 'Gunnar'}}):
    print(person)

但它没有返回任何结果。

1 个答案:

答案 0 :(得分:0)

使用dot notation

for person in people.find({'Father.First Name': 'Gunnar'}):
    print(person)

另见: