zoukankan      html  css  js  c++  java
  • 单一目的聚集操作

    聚集指的是,基于一个输入和特定程序来计算结果的数据操纵操作的广泛类别。

    MongoDB提供了大量在结果集上运行特定聚集操作的聚集操作方法。

    尽量在使用范围上有限制,特别是和聚集管道、map-reduce相比較,但这些操作。为常规的数据处理提供了直接的语义。

    Count

    MongoDB能够返回符合一个query的文档数量。count命令,以及count()和cursor.count()方法提供訪问mongo shell里面的计数(counts)。

    样例:

    如果一个名叫records的集合,仅有以下这些文档:

    { a: 1, b: 0 }
    { a: 1, b: 1 }
    { a: 1, b: 4 }
    { a: 2, b: 2 }

    以下的操作会计算在集合里面的全部文档的数目。并返回4

    db.records.count()

    以下的操作仅仅会对a字段值为1计数,返回结果为3

    db.records.count( { a: 1 } )

    译者注:

    非常多朋友可能对上面的shell脚本转化成实际编程语言感动困难。

    实际上,mongoDB提供的API都非常友好,和上面的shell基本有相应关系。

    以Java为例。

    // db是取得的数据库
    DBCollection collection = db.getCollection("record");
    BasicDBObject query = new BasicDBObject();
    query.put("a",1);
    int result = collection.count(query);

    再举个样例,笔者近期做的一个项目,有这个一个需求:统计当天新注冊用户量。

    query.put("registertime",new BasicDBObject("$gt",HeartDateUtil.getStartDateOfToday()));
    collection.count(query);
    当中HeartDateUtil.getStartDateOfToDay是一个工具方法,用来返回今天開始的Date.


    Distinct


    Distinct操作匹配查询的文档,返回在匹配文档里该字段的全部唯一值。

    在Mongo shell里面提供了distinct命令和db.collection.distinct()方法。考虑以下的操作:



  • 相关阅读:
    Bitnami WordPress如何让默认URL指向WordPress目录?
    单片机调试
    FreeRTOS
    FreeRTOS
    FreeRTOS
    FreeRTOS
    FreeRTOS
    FreeRTOS 问题归纳
    单片机通信的加密和解密
    IAR ------ 扩展关键字__weak
  • 原文地址:https://www.cnblogs.com/yutingliuyl/p/6707963.html
Copyright © 2011-2022 走看看