Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mongodb 按多个字段分组并按日期排序后返回第一个文档的全部内容_Mongodb_Mongodb Query - Fatal编程技术网

Mongodb 按多个字段分组并按日期排序后返回第一个文档的全部内容

Mongodb 按多个字段分组并按日期排序后返回第一个文档的全部内容,mongodb,mongodb-query,Mongodb,Mongodb Query,我有一份结构类似于: { "field1" : "1_of_5_options" "field2" : "1_of_5_options" "field3" : "1_of_5_options" "data1" : "value1" "data2" : "value2" "data3" : "value3" "created" : { $date : { }} } } 我想按字段1、字段2和字段3的所有组合对上

我有一份结构类似于:

{
    "field1" : "1_of_5_options" 
    "field2" : "1_of_5_options"
    "field3" : "1_of_5_options"

    "data1" : "value1"
    "data2" : "value2"
    "data3" : "value3"

    "created" : {
        $date : { }}
    }
}
我想按字段1、字段2和字段3的所有组合对上述内容进行分组,然后按创建日期降序排序,并将该文档的所有内容作为返回集的一部分返回


我原以为我会使用
$group
,然后是
$sort
,但当
$first
要求您指定一个字段时,我就陷入了如何返回所有内容的困境,而实际上我想返回整个文档。

不太清楚您的意思。您可以始终使用
“doc”:{“$first”:“$$ROOT”}
,它将引用整个文档,但这当然意味着将其分配给单个字段,例如
“doc”
,而您的整个文档将位于该字段下。当然,也可以指定需要返回的“每个”字段,并使用
$first
。在你的问题中(没有你尝试过的,或者没有任何期望的结果),你甚至都不相信你的期望是正确的,或者你的期望是现实的。通常在使用
$group
时,“整个文档”是最不需要的。Blakes,感谢您的反馈。您将$$ROOT分配给字段的建议对我很有用。