文档章节

Codeigniter MongoDB 扩展之使用Aggregate方法实现Mysql的Sum方法

xinpure
 xinpure
发布于 2014/12/05 10:17
字数 225
阅读 74
收藏 0

在使用 Codeigniter MongoDB 库的过程当中,遇到了在查询时需要计算某个字段和的需求
想到在 Mysql 中有 Sum 方法可用,不知道 CI MongoDB 是否也有呢?
结果却发现在 CI MongoDB 库中并未提供此类方法
无奈之下,只好翻阅文档,写下此 CI MongoDB 扩展,以便已之需!

 /* Controller.php */

$option = array (
    array (
	    '$match' => array (
		    'match_1'     => 'value_1',
		    'match_2'     => 'value_2'
	    )
    ),
    array (
	    '$group' => array (
		    '_id'     => null,
		    'sum_1'   => ['$sum' => '$amount_1'],
		    'sum_2'   => ['$sum' => '$amount_2'],
		    'sum_3'   => ['$sum' => '$amount_3']
	    )
    )
);
$result = $this -> mongo_db -> aggregate('collection', $option);

/* Mongo_db.php */

public function aggregate ($collection, $option = array())
{
        try
        {
          return $this->db->{$collection}->aggregate($option);
        }
        catch (Exception $e)
        {
             show_error("Unable to aggregate Mongo Databases: {$e->getMessage()}", 500);
        }
}

© 著作权归作者所有

共有 人打赏支持
xinpure
粉丝 1
博文 1
码字总数 225
作品 0
赣州
私信 提问
MongoDB-CodeIgniter-Driver

下载地址:https://github.com/kyledye/MongoDB-CodeIgniter-Driver 1. Add the mongodb.php config file to your ./system/application/config directory and make the appropriate changes......

李佳顺
2012/05/24
0
0
PHP与MongoDB:类库、框架与工具介绍

本文来自MongoDB官方,文中把PHP与MongoDB相关的类库、框架、工具做了汇总和介绍,如果你正使用PHP并在关注MongoDB,那么这篇文章可能对你有用。 架构相关 CakePHP CakePHP是一个非常受欢迎的...

kisshua
2012/08/31
0
0
(新)NODEJS 定时任务管理系统

此项目地址: https://github.com/robanlee123/RobCron - 题外话 我曾几个月前写过另外一个版本的任务管理系统,链接:http://my.oschina.net/u/568264/blog/120854 至于为什么重写这套系统,原因...

_dedecms
2014/01/17
0
12
【PHP-深圳】PHP两年以上工作经验 寻求深圳工作机会

小弟今天晚上刚到深圳,啥也不了解,人生地不熟的,介于深圳的高消费,特别想得到一个合适的工作机会,避免饥荒的到来... 1.PHP 2年工作经验;C# 近1年工作经验;目前正在尝试学习 ROR & JA...

诺思渔
2012/06/16
578
0
CodeIgniter3.0项目推荐

权限系统 https://github.com/benedmunds/CodeIgniter-Ion-Auth 国际化 https://github.com/bcit-ci/codeigniter3-translations session存储库 https://github.com/cnsaturn/codeigniter-my......

果树啊
2015/03/13
0
1

没有更多内容

加载失败,请刷新页面

加载更多

容器服务

简介 容器服务提供高性能可伸缩的容器应用管理服务,支持用 Docker 和 Kubernetes 进行容器化应用的生命周期管理,提供多种应用发布方式和持续交付能力并支持微服务架构。 产品架构 容器服务...

狼王黄师傅
昨天
3
0
高性能应用缓存设计方案

为什么 不管是刻意或者偶尔看其他大神或者大师在讨论高性能架构时,自己都是认真的去看缓存是怎么用呢?认认真真的看完发现缓存这一块他们说的都是一个WebApp或者服务的缓存结构或者缓存实现...

呼呼南风
昨天
12
0
寻找一种易于理解的一致性算法(扩展版)

摘要 Raft 是一种为了管理复制日志的一致性算法。它提供了和 Paxos 算法相同的功能和性能,但是它的算法结构和 Paxos 不同,使得 Raft 算法更加容易理解并且更容易构建实际的系统。为了提升可...

Tiny熊
昨天
3
0
聊聊GarbageCollectionNotificationInfo

序 本文主要研究一下GarbageCollectionNotificationInfo CompositeData java.management/javax/management/openmbean/CompositeData.java public interface CompositeData { public Co......

go4it
昨天
3
0
阿里云ECS的1M带宽理解

本文就给大家科普下阿里云ECS的固定1M带宽的含义。 “下行带宽”和“上行带宽” 为了更好的理解,需要先给大家解释个词“下行带宽”和“上行带宽”: 下行带宽:粗略的解释就是下载数据的最大...

echojson
昨天
10
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部