`
langzhe
  • 浏览: 279064 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

MongDb group操作

 
阅读更多

这几天看了mongdb权威指南这本书,但是我下载的最新的版本(mongodb-src-r2.4.5)。 有些例子执行不成功。

如下面:

1、一条都没有返回 初始化time为0,

> db.runCommand({"group":{"ns":"stocks", "key":"day","initial":{"time":0},"$reduce":function(doc, prev){if(doc.time>prev.time){prev.time=doc.time; prev.price=doc.price; prev.day=doc.day}},"condition":{"day":{"$gt":"2010/09/30"}}}})

{

"retval" : [

{

"time" : 0

}

],

"count" : 5,

"keys" : 1,

"ok" : 1

}

 

2、只返回了一条初始化time为“0”

> db.runCommand({"group":{"ns":"stocks", "key":"day","initial":{"time":"0"},"$reduce":function(doc, prev){if(doc.time>prev.time){prev.time=doc.time; prev.price=doc.price; prev.day=doc.day}},"condition":{"day":{"$gt":"2010/09/30"}}}})

{

"retval" : [

{

"time" : "10/6/2010 05:27:01 GMT-400",

"price" : 4.3,

"day" : "2010/10/06"

}

],

"count" : 5,

"keys" : 1,

"ok" : 1

}

 

3、查了一下手册把“key”:"day"  改成了"key":{"day":1} ,这下数据OK了,数据升序排序,关于结实没有看到更多,我尝试改为“-1”和“0”想实现倒序排序,没有实现

db.runCommand({"group":{"ns":"stocks", "key":{"day":1},"initial":{"time":"0"},"$reduce":function(doc, prev){if(doc.time>prev.time){prev.time=doc.time; prev.price=doc.price; prev.day=doc.day}},"condition":{"day":{"$gt":"2010/09/30"}}}})

{

"retval" : [

{

"day" : "2010/10/03",

"time" : "10/3/2010 05:57:01 GMT-400",

"price" : 4.17

},

{

"day" : "2010/10/04",

"time" : "10/4/2010 08:27:01 GMT-400",

"price" : 4.01

},

{

"day" : "2010/10/06",

"time" : "10/6/2010 05:27:01 GMT-400",

"price" : 4.3

}

],

"count" : 5,

"keys" : 3,

"ok" : 1

}

 

0
2
分享到:
评论

相关推荐

    PHP中的mongodb group操作实例

    主要介绍了PHP中的mongodb group操作实例,本文给出了3个group命令的用法,需要的朋友可以参考下

    C# 操作MongoDB源码 含连接MongoDB库

    C# 操作MongoDB源码 含连接MongoDB库,包括集合、文档、索引操作,sort、limit、skip、distinct、group等等对键的操作

    Mongodb聚合函数count、distinct、group如何实现数据聚合操作

    Mongodb中自带的基本聚合函数有三种:count、distinct和group。下面我们分别来讲述一下这三个基本聚合函数。 (1)count 作用:简单统计集合中符合某种条件的文档数量。 使用方式:db.collection.count

    浅析mongodb中group分组

    MongoDB的group还有很多限制,如:返回结果集不能超过16M, group操作不会处理超过10000个唯一键,好像还不能利用索引[不很确定]。 Group大约需要一下几个参数。  1.key:用来分组文档的字段。和keyf两者必须有一个...

    MongoDB 中聚合统计计算–$SUM表达式

    以上两种情况的聚合统计,分别对应与聚合框架中的 $group 操作步骤和 $project 操作步骤。 1.$group 直接看例子吧。 Case 1 测试集合mycol中的数据如下: { title: 'MongoDB Overview', description: 'MongoDB is...

    mongodb 数据库基本操作.zip

    mongodb 数据库基本操作,聚合框架用于处理数据集合,返回计算后的结果。常用的聚合管道操作包括: $match:过滤数据 $group:分组 $sort:排序 $project:投影,类似于SQL里的SELECT,可以用来选择特定的字段 � �...

    深入云计算 MongoDB管理与开发实战详解pdf.part1

    2.6.2 使用Shell对MongoDB的基本操作 2.6.3 使用Shell的诀窍 2.6.4 特殊的集合名 2.7 本章小结 第3章 文档的增加、修改及删除 3.1 插入并保存文档 3.1.1 插入的原理和作用 3.1.2 批量插入 3.2 ...

    MongoDB权威指南(中文版)高清

    52.2 集合 62.2.1 无模式 62.2.2 命名 72.3 数据库 82.4 启动MongoDB 92.5 MongoDB shell 102.5.1 运行shell 102.5.2 MongoDB客户端 112.5.3 shell中的基本操作 112.5.4 使用shell的窍门 132.6...

    电子书:MongoDB权威指南(中文版)

    82.4 启动MongoDB 92.5 MongoDB Shell 102.5.1 运行shell 102.5.2 MongoDB 客户端 112.5.3 shell 中的基本操作 112.5.4 使用shell 的窍门 132.6 数据类型 152.6.1 基本数据类型 152.6.2 数字 172....

    深入解析MongoDB聚合与索引:提升数据库效能的关键策略

    通过具体实例,我们将了解MongoDB聚合框架的使用方法,包括各种聚合管道阶段(如$match, $project, $group等)的运用。同时,深入探讨MongoDB索引的类型(如单键索引、复合索引、多键索引等),并分析索引的创建、...

    《10天掌握MongoDB》2012完整版.pdf[带书签]

    聚合操作-GROUP完成器 聚合操作-GROUP键函数 聚合操作-MAPREDUCE(简介) 聚合操作-MAPREDUCE(OUTPUT) 第六天:进阶指南 数据库命令-概览 数据库命令-BUILDINFO 数据库命令-COLLSTATS 数据库命令-DROP 数据库命令-...

    深入云计算 MongoDB管理与开发实战详解pdf.part2

    2.6.2 使用Shell对MongoDB的基本操作 2.6.3 使用Shell的诀窍 2.6.4 特殊的集合名 2.7 本章小结 第3章 文档的增加、修改及删除 3.1 插入并保存文档 3.1.1 插入的原理和作用 3.1.2 批量插入 3.2 ...

    Java访问MongoDB实用工具类

    Java访问MongoDB的实用工具类,包括增、删、改、查、distinct、group、mapreduce等,具备常用的MongoDB操作,可以简化基于MongoDB的Java程序开发。

    解决MongoDB 排序超过内存限制的问题

    对集合执行一个大排序操作(如聚合),出现以下错误:(测试版本:MongoDB 3.0.6) > db.bigdata.aggregate( {$group : {_id : $range, total : { $sum : 1 }}}, {$sort : {total : -1}} ); #... aggregate ...

    MongoDB之聚合aggregate操作

    关于mongodb的高级操作,包括聚合、主从复制、分片、备份与恢复、MR。 一、聚合 aggregate 聚合(aggregate)主要用于计算数据,类似sql中的sum()、avg() 语法: db.集合名称.aggregate([{管道:{表达式}}]) 管道:...

    mongodb聚合_动力节点Java学院整理

    今天跟大家分享一下mongodb中比较好玩的知识,主要包括:聚合,游标。...在mongodb里面做group操作有点小复杂,不过大家对sql server里面的group比较熟悉的话还是一眼 能看的明白的,其实group操作本质上形成了一种

    PHP操作MongoDB时的整数问题及对策说明

    MongoDB本身有两种整数类型,分别是:32位整数和64位整数,但旧版的PHP驱动不管操作...在处理group操作的时候还有BUG: 为了说明问题,我们先来生成一些测试数据:复制代码 代码如下: <?php ini_set(‘mongo.native

    MongoDB中多表关联查询($lookup)的深入讲解

    聚合框架是MongoDB的高级查询语言,它允许我们通过转换和合并多个文档中的数据来生成新的单个文档中不存在的信息。 聚合管道操作主要包含下面几个部分: 命令 功能描述 $project 指定输出文档里的字段. $...

    pymongo中group by的操作方法教程

    使用 pymongo 进行 group by 操作有两种基本方式,他们都是 mongodb 的原生命令,于 Collection 对象上调用。 def aggregate(self, pipeline, **kwargs): def group(self, key, condition, initial, reduce, ...

Global site tag (gtag.js) - Google Analytics