我有两个键 A 和 B,它们在文档中的存在是互斥的。当A存在时我必须按A分组,当B存在时我必须按B分组。因此,我$project
将所需的值放入名为 MyKey 的计算键中,我将在该键上执行$group
. 但看起来我在语法上犯了一个错误。我尝试以两种方式编写 $project:
{$project: {MyKey: {$cond: [{$exists: ["$A", true]}, "$A", "$B"]}}}
和
{$project: {MyKey: {$cond: [{"A": {$exists:true}}, "$A", "$B"]}}}
但我不断收到错误:
{ "errmsg" : "exception: invalid operator '$exists'", "code" : 15999, "ok" : 0 } ...
怎么了?