使用mongodb projection,我们可以定义包含哪些字段,排除哪些字段。
就像这样:
data = db.Users.find_one({'username': user },{"_id":0,"password":0,"email":1})
此查询将排除_id
和password
字段,仅包含email
。
但是,是否有一种方法可以排除文档中存在的所有字段,而只获取email
和phone
,
在较小的文档中,我可以将不需要的项目的项目值设置为0,但对于较大的文档,是否有方法自动排除所有其他字段/项目,仅获取需要的项目?
1条答案
按热度按时间n3ipq98p1#
您提供的特定命令/语法实际上 * 无效 *:
您可以在this playground example中看到相同的故障。
但是,默认情况下,投影将完全按照您的要求进行操作。
仅返回指定的字段和_id字段通过在投影文档中将
<field>
设置为1
,投影可以显式包括多个字段。因此,如果将投影的(无效)
"password":0
分量替换为"phone":1
,则命令如下所示:它将按照您的要求运行。this playground example中的演示。