第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

如何使用 $group 聚合計(jì)算數(shù)據(jù)中的記錄總數(shù)

如何使用 $group 聚合計(jì)算數(shù)據(jù)中的記錄總數(shù)

Go
守候你守候我 2023-05-08 18:12:58
我正在嘗試使用 golang mgo 包執(zhí)行查詢(xún)以有效地從 $group 聚合中獲取相似值并計(jì)算總記錄值。但我無(wú)法獲取分組數(shù)據(jù)的總記錄數(shù)。我的結(jié)構(gòu)是這樣的:{    "data": [        {            "_id": 366,            "logs": [                {                    "id": 113,                    "booking_id": 366,                    "provider_id": 13,                    "cid": 11,                    "type": "basic",                    "time": 1542793756,                },                {                    "id": 116,                    "booking_id": 366,                    "provider_id": 13,                    "cid": 0,                    "type": "type2",                }            ]        },        {            "_id": 362,            "logs": [                {                    "id": 104,                    "booking_id": 362,                    "provider_id": 7,                    "cid": 10,                    "type": "basic",                    "time": 1542776677,                }            ]        },        {            "_id": 370,            "logs": [                {                    "id": 111,                    "booking_id": 370,                    "provider_id": 9,                    "cid": 11,                    "type": "basic",                    "time": 1542792661,                },                {                    "id": 112,                    "booking_id": 370,                    "provider_id": 11,                    "cid": 11,                    "type": "basic",                    "time": 1542793185,                }            ]       }    ],     "total_record": 2   }為此,我想要在數(shù)據(jù)中預(yù)設(shè)總記錄::"total_record":3 查詢(xún)我正在使用 ::query := []bson.M{        {"$group": bson.M{        "_id":  "$booking_id",        "logs": bson.M{ "$push": "$$ROOT" }        "count": bson.M{"$sum":1},        }},    }    pipe := getCollection.Pipe(query)    err = pipe.AllowDiskUse().One(&result)我想要這個(gè)結(jié)果的總數(shù)。日志部分包含具有不同“provider_id”值的重復(fù)預(yù)訂數(shù)據(jù),但我已將所有類(lèi)似的 booking_id 數(shù)據(jù)分組在單個(gè)文檔中并顯示它的計(jì)數(shù)。$group 聚合有可能嗎?
查看完整描述

1 回答

?
侃侃爾雅

TA貢獻(xiàn)1801條經(jīng)驗(yàn) 獲得超16個(gè)贊

您可以使用 $count 聚合來(lái)查找數(shù)據(jù)中的總記錄,鏈接


要計(jì)算分組數(shù)據(jù)的總數(shù),可以在分組數(shù)據(jù)后使用 $count 聚合。如果你想要總計(jì)數(shù),你的查詢(xún)應(yīng)該是這樣的data::


query := []bson.M{

        {"$group": bson.M{

        "_id":  "$booking_id",

        }},

        {"$count" : "count"},

    }


    pipe := getCollection.Pipe(query)

    err = pipe.AllowDiskUse().One(&result)

要計(jì)算每個(gè)記錄中的記錄,"logs"您可以使用查詢(xún)?nèi)缦拢?/p>


query := []bson.M{

        {"$group": bson.M{

        "_id":  "$booking_id",

        "logs": bson.M{ "$push": "$$ROOT" },

        "count": bson.M{"$sum":1},

        }},

    }


    pipe := getCollection.Pipe(query)

    err = pipe.AllowDiskUse().One(&result)


查看完整回答
反對(duì) 回復(fù) 2023-05-08
  • 1 回答
  • 0 關(guān)注
  • 129 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)