91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

聚合的方法介紹

發布時間:2020-03-03 19:08:14 來源:網絡 閱讀:484 作者:梁十八 欄目:MongoDB數據庫

聚合( Aggregation )為集合文檔數據提供各種處理數據方法,并返回計算結果。MongoDB 提供了3 種方式來執行聚合命令:聚合管道方法、map-reduce 方法和單一目標聚合方法。


1.聚合管道方法
聚合管道方法又可以直接理解為合計流水線法,就是把集合里若干含數值型的文檔記錄,其鍵對應的值進行各種分類統計。該方法支持分片集合操作。

語法: db.collection_name.aggregate(
    [{$match: {<field>}},//統計查找條件
        {$group:{<fieldl >,< field2 >}}
        //fieldl 為分類字段; field2 為含各種統計操作符的數值型字段,如$sum、$avg、$min、$max、$push、$addToSet、$first、$last操作符

db.Sale_detail.aggregate(
    [
        {
            $match: {ok : false}  //查找條件,與find()的查找條件使用方法一樣
        },
        {
            $group: {
                _id: "$goodsid",
                total: {$sum: "$amount"}  //按goodsid分類統計amount字段的總數量
            }
        }
    ]
)

_id :"$goodsid" ,goodsid為分類字段名,_id為必須指定唯一性字段,不能改為其他名稱的字段;total為統計結果字段名,可以是任意的符合起名規則的新名稱。$sum為求和操作符號, $amount為求和字段,必須加上雙引號。


2. map-reduce方法

語法: db.collection_name. mapreduce(
                function() {emit( <this.field1>,<this.field2>)},
                function(key, value){return array.sum(values)},
                {query: {<field>} ,out:<"resultname">}

命令說明:

    function(){emit(<this.field1>, <this.field2>)},把集合對應的字段<field1><field2>進行map(影射)操作。

    把自field1值和求得值連同out:<"resultname">一起返回。

    query:{<field>}在集合里查詢符合<field>條件的文檔。
    該方式進行聚合運算,效率較聚合管道方式要低,而且使用更復雜。


3. 單一目標聚合方法
該方法下,目前有兩種聚合操作功能:db.collection_name.count()和db.collection_name.distinct()。
(1)語法:db.collection_name.count(query, options)
命令說明:統計集合里符合查詢條件的文檔數量, query 為查詢條件, option 參數詳細說明如表

聚合的方法介紹


統計符合條件的記錄數

db.Sale_detail.count({ok: false})


從第二條開始統計符合條件的記錄數

db.Sale_detail.count({ok: false}, {skip: 1})


統計指定鍵的不同值并返回不同值

db.Sale_detail.distinct("goodsid")


單一目標聚合方法,可以直接在find()后加點使用。
如goodsdb.Sale_detail.find({ok:false}).count()
goodsdb.Sale_detail.find({ok:false}).count().skip(1)

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

丰镇市| 江陵县| 四子王旗| 称多县| 上饶县| 平泉县| 瑞金市| 新田县| 崇阳县| 常宁市| 旬阳县| 淳化县| 江川县| 平果县| 龙岩市| 荃湾区| 鄂州市| 清原| 尉犁县| 茌平县| 云龙县| 枣庄市| 屯门区| 双辽市| 绍兴市| 陕西省| 偏关县| 乐安县| 河源市| 饶平县| 韶关市| 北海市| 桃江县| 云梦县| 杭州市| 通化市| 任丘市| 留坝县| 蓬莱市| 庆安县| 南木林县|