這篇文章將為大家詳細(xì)講解有關(guān)MongoDB求和的方法,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

創(chuàng)新互聯(lián)公司主營(yíng)陵水黎族網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,成都app軟件開(kāi)發(fā)公司,陵水黎族h5微信小程序開(kāi)發(fā)搭建,陵水黎族網(wǎng)站營(yíng)銷推廣歡迎陵水黎族等地區(qū)企業(yè)咨詢
mongodb求和的方法:
1、使用MapReduce求和
Map-Reduce是一種計(jì)算模型,簡(jiǎn)單的說(shuō)就是將大批量的工作(數(shù)據(jù))分解(MAP)執(zhí)行,然后再將結(jié)果合并成最終結(jié)果(REDUCE)。
MongoDB提供的Map-Reduce非常靈活,對(duì)于大規(guī)模數(shù)據(jù)分析也相當(dāng)實(shí)用。
以下是MapReduce的基本語(yǔ)法:
>db.collection.mapReduce(
function() {emit(key,value);}, //map 函數(shù)
function(key,values) {return reduceFunction}, //reduce 函數(shù)
{
out: collection,
query: document,
sort: document,
limit: number
}
)示例:
$db->command([
'mapreduce' => 'orders',
'map' => 'function(){emit("money",this.money)}',
'reduce' => 'function(key, values){return Array.sum(values)}',
'query' => $map,
'out' => 'total_money'
]);2、使用aggregate()方法
MongoDB中聚合(aggregate)主要用于處理數(shù)據(jù)(諸如統(tǒng)計(jì)平均值,求和等),并返回計(jì)算后的數(shù)據(jù)結(jié)果。有點(diǎn)類似sql語(yǔ)句中的 count(*)。
aggregate() 方法的基本語(yǔ)法格式如下所示:
>db.COLLECTION_NAME.aggregate(AGGREGATE_OPERATION)
示例:
$collection->aggregate([ ['$match' => $map], ['$group' => [ '_id' => null, 'total_money' => ['$sum' => '$money'], 'total_money_usd' => ['$sum' => '$money_usd'] ]] ]);
關(guān)于mongodb求和的方法就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。
當(dāng)前題目:mongodb求和的方法
標(biāo)題URL:http://chinadenli.net/article48/pgpdhp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站、手機(jī)網(wǎng)站建設(shè)、App開(kāi)發(fā)、、定制開(kāi)發(fā)、自適應(yīng)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)