【发布时间】:2017-02-27 03:27:41
【问题描述】:
假设这个文件:
{
_id : Object(“12918”),
username : “username”,
password : “password”,
occupation: {
name : “Football”,
code : 254,
}
},
{
_id : Object(“12919”),
username : “username2”,
password : “password2”,
occupation: {
name : “Basketball”,
code : 255,
}
}
我想要一个返回的查询:
{
_id : Object(“12918”),
occupation : {
name : “*”,
code : 254
}
},
{
_id : Object(“12919”),
occupation : {
name : “*”,
code : 255
}
}
所以,一个只返回字段 _id 和 occupation 的查询。并且字段 occupation.name 必须在所有记录中替换为 *。
我试过这个查询:
aggregate([
{
"$project" :
{
"_id" : 1,
“occupation" : 1,
“occupation.name" : { $literal:“*” }
}
}
])
返回以下异常:
{ “好”:0, "errmsg" : "不能为字段占用添加表达式,因为已经有该字段或其子字段之一的表达式。", “代码”:16400 }
有没有办法做到这一点?
【问题讨论】:
-
你的 mongo 服务器版本是多少?
-
版本为 3.0.1
标签: mongodb mongodb-query aggregation-framework