Как сделать row_number разделом в монго

mongodb

811 просмотра

1 ответ

31 Репутация автора

У меня есть Sql как:

SELECT *
FROM (
   SELECT Row_number() OVER(PARTITION BY bpid ORDER BY LoginTime DESC) rn, userid
   FROM xxx_table) t
WHERE rn <= 3

Как это сделать в mongodb? Я пишу запрос так:

{$sort:{"LatestLoginTime":-1}},
{"$limit":2000},
{
    $group:{
        _id:"$BPID",
        items:{
            $push:{
                userId:'$UserID',
                date:'$LatestLoginTime'
            }
        }
    }
}
Автор: Capqueen Источник Размещён: 18.07.2016 06:25

Ответы (1)


0 плюса

101 Репутация автора

https://docs.mongodb.com/manual/reference/operator/aggregation/last/

$ last Возвращает значение, полученное в результате применения выражения к последнему документу в группе документов, которые совместно используют одну и ту же группу по полю. Имеет смысл только тогда, когда документы находятся в определенном порядке.

Проверьте первый пример

Автор: Awknewbie Размещён: 16.06.2017 10:35
Вопросы из категории :
32x32