delphi mongodb 调用group

var   query,b1,b2:tbson;   buf:tbsonbuffer;   code:TBsonCodeWScope; begin if dbman=nil then dbman:=tdbmanage.create;

buf:=tbsonbuffer.Create;   buf.startObject(‘group‘);   buf.append(‘ns‘,‘testc‘);

buf.startObject(‘key‘);   buf.append(‘name‘,null);   buf.finishObject;

buf.startObject(‘initial‘);   buf.append(‘num‘,0);   buf.finishObject;

code:=tbsoncodewscope.Create(‘function(doc,prev){ prev.num++;}‘,bson([]));    buf.append(‘$reduce‘,code);

buf.finishObject;   query:=buf.finish;

b2:=dbman.mongodbs.mongo.command(‘prjdbs‘,query);

b1:=dbman.mongodbs.mongo.getLastErr(‘prjdbs‘);   if b1<>nil then showmessage(b1.Displaystr.ToString);   showmessage(b2.Displaystr.ToString);

end;

时间: 2024-10-15 18:48:54

delphi mongodb 调用group的相关文章

浅析mongodb中group分组

这篇文章主要介绍了浅析mongodb中group分组的实现方法及示例,非常的简单实用,有需要的小伙伴可以参考下. group做的聚合有些复杂.先选定分组所依据的键,此后MongoDB就会将集合依据选定键值的不同分成若干组.然后可以通过聚合每一组内的文档,产生一个结果文档.和数据库一样group常常用于统计.MongoDB的group还有很多限制,如:返回结果集不能超过16M, group操作不会处理超过10000个唯一键,好像还不能利用索引[不很确定]. 一.Group大约需要一下几个参数. 1

如何在Delphi中调用VC6.0开发的COM

上次写了如何在VC6.0下对Delphi写的COM进行调用,原本想马上写如何在Delphi中调用VC6.0开发的COM时,由于在写事例程序中碰到了个很怪的问题,在我机子上用VC写的接口程序编译能通过.但是调用就会出现问题,(在VC下调用也是一样的出现).但是用Delphi写的接口程序编译后,不管是在VC下还是在Delphi下调用都没有问题.后来我把VC开发的接口程序编译后,拷贝到其它机子上试,怪事,完全没有问题了.总结后才知道是我机子有点问题.我到现在还没有解决为什么在我的机子上不行,在其它机子

mongodb的group详细成功案例

/** * 查询财务报表 * @author liupeng * @param timeStart * @param timeEnd * @return */ //public List<KeyRequest> findByTimeForFinal(String timeStart, String timeEnd) { public List<DBObject> findByTimeForFinal(String timeStart, String timeEnd) { Basic

delphi xe6 调用java原生GPS的方法

如果用xe6自带的LocationSensor控件,默认优先使用网络位置,为了直接使用GPS位置,在网上搜到了以下代码,经实测证实是可用的. uses Androidapi.JNI.Location, Androidapi.JNIBridge, Androidapi.JNI.JavaTypes, Androidapi.JNI.Os,FMX.Helpers.Android,Androidapi.JNI.GraphicsContentViewText; type TLocationListener

Delphi子类调用祖父类的虚函数

因为看Delphi书的时候,就产生了疑惑.老讲调用父类虚函数,但是万一需要调用祖父虚函数怎么办?后来又经常在C++里看到,就更疑惑了 type TA = class procedure ShowMsg; virtual; end; TAClass = class of TA; TB = class(TA) procedure ShowMsg; override; end; TShowMsg = procedure of object; TC = class(TB) private FGrandF

Delphi“尚未调用CoInitialize”解决方法

这个一般是在使用COM或者调用ADO控件时出现的错误,通常情况下都是程序的问题.调用了com,ole函数库前就要coinitialize,因为在应用程序中,delphi会自动在initialize 单元加上对co...函数的调用,在dll中要自己调用. 但在Delphi开中的PubDBConn中的如下代码竞也提示“尚未调用 CoInitialize” procedure CreateadocSQL;begin  adocSQL := TADOConnection.Create(nil);  tr

MongoDB 聚合Group(一)

一.简介 db.collection.group()使用JavaScript,它受到了一些性能上的限制.大多数情况下,$ group在Aggregation Pipeline提供了一种具有较少的限制适用的替代.可以通过指定的键的集合中的文档和执行简单的聚合函数.在2.2版本中,返回的数组可以包含最多20000个元素:即最多20000个独特的分组. 我们比较熟悉的group by 的sql语句select key from table  groupby key,而mongoDB没提供SQL那样通过

mongodb MongoDB 聚合 group

MongoDB 聚合 MongoDB中聚合(aggregate)主要用于处理数据(诸如统计平均值,求和等),并返回计算后的数据结果.有点类似sql语句中的 count(*). 基本语法为:db.collection.aggregate( [ <stage1>, <stage2>, ... ] ) 现在在mycol集合中有以下数据: { "_id" : 1, "name" : "tom", "sex" :

mongodb MongoDB 聚合 group(转)

MongoDB 聚合 MongoDB中聚合(aggregate)主要用于处理数据(诸如统计平均值,求和等),并返回计算后的数据结果.有点类似sql语句中的 count(*). 基本语法为:db.collection.aggregate( [ <stage1>, <stage2>, ... ] ) 现在在mycol集合中有以下数据: { "_id" : 1, "name" : "tom", "sex" :