mongoengine查询是否可以返回包含唯一属性的对象列表。例如,如果我有一个数据库
[{name: Joe, age:22},
{name: Susie, age 22},
{name: Joe, age: 70},
{name: Susie, age:21}]
我如何查询数据库,以便我想要所有年龄<25但只有唯一名称的对象。例如,我得到以下结果
[{name: Joe, age:22},
{name: Susie, age 21}]
或
[{name: Joe, age:22},
{name: Susie, age:22}]
答案 0 :(得分:1)
你想要MongoDB(以及pymongo的)cursor.distinct()方法。
示例代码如下:
from pymongo import MongoClient
query = {'age': {'$lt': 25}}
conn = pymongo.MongoClient('mongodb://localhost:27017')
users = conn['database_name']['collection_name'].find(query).distinct('name')