我的 mongodb 命名事件中有一個集合。以下是其中的一些資料:
[{
_id: 100,
streamer_id: a01,
viewers: 4,
title: "Event 1"
},{
_id: 101,
streamer_id: a01,
viewers: 7,
title: "Event 2"
},
{
_id: 103,
streamer_id: a02,
viewers: 3,
title: "Stream"
},
我基本上希望對 streamer_id 進行分組并添加觀看者的數量。聚合的最佳方式是什么?
還沒有嘗試過任何東西,因為我不知道如何進行。但這是我所期望的:
[{
_id: any id,
streamer_id: a01,
total_viewers: 11
},{
_id: any id,
streamer_id: a02,
total_viewers: 3
},
uj5u.com熱心網友回復:
以后請先嘗試該問題。
但這是使用$group和$sum的簡單方法。您還可以使用$project來按照您的意愿格式化檔案。
作業示例:https ://mongoplayground.net/p/Ucb2EWgC_Y5
詢問:
db.collection.aggregate([
{
$group: {
_id: {
streamer_id: "$streamer_id",
},
total_viewers: {
$sum: "$viewers"
}
}
},
{
$project: {
_id: 0,
streamer_id: "$_id.streamer_id",
total_viewers: 1
}
}
])
結果:
[
{
"streamer_id": "a01",
"total_viewers": 11
},
{
"streamer_id": "a02",
"total_viewers": 3
}
]
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/534198.html
上一篇:如何在貓鼬中正確使用索引?
