BsonJavaScript
BsonJavaScript主要应用于mongodb驱动中
1.进行数据分组
MongoClient client = new MongoClient(host.ConnectionString);
var server = client.GetServer();
var dataBase = server.GetDatabase(host.DatabaseName);
var collectionClient = dataBase.GetCollection<TestEntity>(host.CollectionName);
//创建分组结果字典
Dictionary<string, double> dic_M = new Dictionary<string, double>();
dic_M["msum"] = 0.0;//分组数据统计值
//"Sex",进行分组的字段
//"function(doc,prev){if(doc.Age>25){ prev.msum++;}}" doc是个实体,获取年龄大于25岁的,进行统计
//"function(doc){ doc.count=doc.msum;delete doc.msum; }" 把分组数据统计值赋给字典values,并删除分组数据统计值
var result = collectionClient.Group(null, "Sex", BsonDocument.Create(dic_M), BsonJavaScript.Create("function(doc,prev){if(doc.Age>25){ prev.msum++;}}"),
BsonJavaScript.Create("function(doc){ doc.count=doc.msum;delete doc.msum; }")).ToList();
BsonJavaScript的更多相关文章
- c#操作MangoDB 之MangoDB CSharp Driver驱动详解
序言 MangoDB CSharp Driver是c#操作mongodb的官方驱动. 官方Api文档:http://api.mongodb.org/csharp/2.2/html/R_Project_ ...
- MongoDB官方C#驱动中查询条件Query用法
Query.All("name", "a", "b");//通过多个元素来匹配数组 Query.And(Query.EQ("nam ...
- C# mongodb 驱动操作(Z)
Query.All("name", "a", "b");//通过多个元素来匹配数组 Query.And(Query.EQ("nam ...
- (转载)MongoDB C#驱动中Query几个方法
MongoDB C#驱动中Query几个方法 Query.All("name", "a", "b");//通过多个元素来匹配数组 Query ...
- C# 访问MongoDB 通用方法类
using MongoDB.Driver; using System; namespace MongoDBDemo { public class MongoDb { public MongoDb(st ...
- 【转】MongoDB C# / .NET Driver 中IMongoQuery的内部实现Query的用法
MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的.他支持的数据结构非常松散,是类似 json的bjson格式,因此可以存储比较复杂的数据类型. ...
- 基于C#的MongoDB数据库开发应用(1)--MongoDB数据库的基础知识和使用
在花了不少时间研究学习了MongoDB数据库的相关知识,以及利用C#对MongoDB数据库的封装.测试应用后,决定花一些时间来总结一下最近的研究心得,把这个数据库的应用单独作为一个系列来介绍,希望从各 ...
- MongoDB在实际项目中的使用
MongoDB简介 MongoDB是近些年来流行起来的NoSql的代表,和传统数据库最大的区别是支持文档型数据库. 当然,现在的一些数据库通过自定义复合类型,可变长数组等手段也可以模拟文档型数据库. ...
- MongoDB-query查询接口
在上一篇中简要使用了C# 对MongoDB进行数据操作,这里补充一些MongoDB query查询条件文档: Query.All("name", "a",&qu ...
随机推荐
- Superset安装与使用
参考: https://www.jianshu.com/p/b02fcea7eb5b
- CentOs7 最小安装版安装后配置和java环境的搭建
下面是contos7 最小化安装成功以后进行一些基础的配置和java环境的安装教程: 1 防火墙 : 关闭防火墙: systemctl stop firewalld.service . 关闭开机启 ...
- Vue子组件与父组件之间的通信
1.环境搭建 下载 vue-cli:npm install -g vue-cli 初始化项目:vue init webpack vue-demo 进入vue-demo文件夹:cd vue-demo 下 ...
- codeforces733C
Epidemic in Monstropolis CodeForces - 733C 有n条鱼排成一列,第i条鱼大小为ai,根据自然界的生存法则,相邻的两只鱼中,较大的鱼可以吃掉较小的鱼,如果两条鱼大 ...
- Go语言的通道(1)-无缓冲通道
前言: 上文中我们采用了[原子函数]已经[共享锁]两种方式分别对多个goroutine进行了同步,但是在go语言中提供了另一种更好的方式,那就是使用通道(Channel). 一.通道是什么? 其实无论 ...
- Vivado寄存器初始值问题
前言 本复位只针对Vivado中的寄存器复位. 什么时候需要复位?到底要不要复位?怎么复位?复位有什么卵用? 该复位的寄存器需要复位,复位使得寄存器恢复初始值,有的寄存器并不需要复位(数据流路径上). ...
- CF932 E. Team Work 结题报告
CF932 E. Team Work 题意 求 \[ \sum_{i=0}^n\binom{n}{i}i^k \] 其中\(n\le 10^9,k\le 5000\),对\(mod=998244353 ...
- badboy安装及使用
badboy下载 下载地址:http://www.badboy.com.au/download/index 直接点击[continue] badboy安装 badboy录制 默认是录制状态 访问sog ...
- 打怪升级之路—Security+认证通关攻略(401还是501)
我花了一个月才把题目过完一遍的(这一个月都上班,下班抽空做几页),这里面走了很多弯路,我把备考过程整理出来希望对大家有帮助. 我是在2019年1月完成的Security+考试,离安全牛课堂直播培训结束 ...
- 转:centos 7 安装音频视频解码器
(原文:https://blog.csdn.net/zhou1519/article/details/39035233/) 1.安装额外的软件源epel和nux-dextop rpm -Uvh htt ...