Query.All("name", "a", "b");//通过多个元素来匹配数组

 Query.And(Query.EQ("name", "a"), Query.EQ("title", "t"));//同时满足多个条件

 Query.EQ("name", "a");//等于

 Query.Exists("type", true);//判断键值是否存在

 Query.GT("value", 2);//大于>

 Query.GTE("value", 3);//大于等于>=

 Query.In("name", "a", "b");//包括指定的所有值,可以指定不同类型的条件和值

 Query.LT("value", 9);//小于<

 Query.LTE("value", 8);//小于等于<=

 Query.Mod("value", 3, 1);//将查询值除以第一个给定值,若余数等于第二个给定值则返回该结果

 Query.NE("name", "c");//不等于

 Query.Nor(Array);//不包括数组中的值

 Query.Not("name");//元素条件语句

 Query.NotIn("name", "a", 2);//返回与数组中所有条件都不匹配的文档

 Query.Or(Query.EQ("name", "a"), Query.EQ("title", "t"));//满足其中一个条件

 Query.Size("name", 2);//给定键的长度

 Query.Type("_id", BsonType.ObjectId );//给定键的类型

 Query.Where(BsonJavaScript);//执行JavaScript

 Query.Matches("Title",str);//模糊查询 相当于sql中like -- str可包含正则表达式

示例:

using (var database = new Server.MongoDatabaseServer())
{ MongoCollection<BsonDocument> mc = database.GetCollection<BsonDocument>("NewsList");
DateTime qtime = DateTime.Now;
var query = Query.And(Query.GTE("PublishDate", startDate), Query.LTE("PublishDate", endDate), Query.EQ("NewsSource", "Kompas"));
foreach (BsonDocument emp in mc.Find(query))
{
long newsId = emp["NewsId"].AsInt64;
string title = emp["NewsTitle"].AsString;
Console.WriteLine("查询结束:新闻Id" + newsId + "----标题:" + title);
}
DateTime etime = DateTime.Now;
TimeSpan ts = etime.Subtract(qtime);
string stime = ts.TotalMilliseconds.ToString();
Console.ForegroundColor = ConsoleColor.Red;
Console.WriteLine("toatal use " + stime + " ms to Query ");
}

MongoDB官方C#驱动中查询条件Query用法的更多相关文章

  1. 基于MongoDb官方C#驱动封装MongoDbCsharpHelper类(CRUD类)

    近期工作中有使用到 MongoDb作为日志持久化对象,需要实现对MongoDb的增.删.改.查,但由于MongoDb的版本比较新,是2.4以上版本的,网上已有的一些MongoDb Helper类都是基 ...

  2. 适用于app.config与web.config的ConfigUtil读写工具类 基于MongoDb官方C#驱动封装MongoDbCsharpHelper类(CRUD类) 基于ASP.NET WEB API实现分布式数据访问中间层(提供对数据库的CRUD) C# 实现AOP 的几种常见方式

    适用于app.config与web.config的ConfigUtil读写工具类   之前文章:<两种读写配置文件的方案(app.config与web.config通用)>,现在重新整理一 ...

  3. eas之EntityViewInfo对象mainQuery中查询条件

    EntityViewInfo对象mainQuery中查询条件:  添加查询字段:(Sql语句中的selectz子句内容)    SelecttorItemCollection sic=new Sele ...

  4. SpringMVC MongoDB之“基本文档查询(Query、BasicQuery)”

    一.简介 spring Data  MongoDB提供了org.springframework.data.mongodb.core.MongoTemplate对MongoDB的CRUD的操作,上一篇我 ...

  5. YII2中查询生成器Query()的使用

    YII2中的yii\db\Query给我们提供了非常丰富的方法,方便我们构建复杂的SQL语句. Query()与createCommand最大区别在于,后者直接使用我们写好的SQL语句,前者通过参数和 ...

  6. jsp中查询条件的回显

    后台框架为ssh,前台纯手写无框架是最老的写法,因为是接手别人的项目无法改变框架原型,只能基于修改. 进入正题: 我这里查询条件有两种input的text(文本框)和select(下拉框). 1.te ...

  7. sql通配符+sql中查询条件包含下划线等通配符的写法

    一.SQL 通配符 在搜索数据库中的数据时,SQL 通配符可以替代一个或多个字符. SQL 通配符必须与 LIKE 运算符一起使用. 在 SQL 中,可使用以下通配符: 通配符 描述 % 替代一个或多 ...

  8. MongoDB小结19 - find【查询条件$all】

    利用all来查询所以满足的匹配项,已知数据库有这些数据 db.user.find({},{"_id":0}) { "fruit" : [ "apple ...

  9. MongoDB小结17 - find【查询条件$or】

    我们再添加一个游泳的人,并用$in查询游泳的人 db.user.find({"hobby":{"$in":["swimming"]}},{& ...

随机推荐

  1. Windows 10 密钥分享

    Windows 10 Technical Preview for Enterprise:KEY:PBHCJ-Q2NYD-2PX34-T2TD6-233PKhttp://technet.microsof ...

  2. 基于jQuery的自适应图片左右切换

    效果预览:http://hovertree.com/code/jquery/smjv6d0n.htm 基于jQuery编写的横向自适应幻灯片切换特效 全屏自适应jquery焦点图切换特效,在IE6这个 ...

  3. UIAlertController 部分用法及属性

    //创建UIAlertController:初始化UIAlertController 需要使用alertControllerWithTitle UIAlertController *alertCont ...

  4. spring aop配置出错

    Multiple annotations found at this line: - schema_reference.4: Failed to read schema document 'http: ...

  5. 《疯狂Java讲义》学习笔记——第2章 理解面向对象

    面向对象的三种基本特征:继承,封装,多态 UML(统一建模语言) 2.1 面向对象 2.1.1 结构化程序设计简介 图2.1  结构化软件的逻辑结构示意图 从图2.1可以看出,结构化设计需要采用自顶向 ...

  6. PHP资源网站收藏

    PHP之道 http://laravel-china.github.io/php-the-right-way/#use_the_current_stable_version http://www.ph ...

  7. jQuery uploadify 文件上传

    uploadify这个插件是基于js里面的jquery库写的.结合了ajax和flash,实现了这个多线程上传的功能.现在最新版为3.2.1. 在线实例 实例预览 Uploadify 在线实例Demo ...

  8. 滚动变色的文字js特效

    Js实现滚动变色的文字效果,在效果展示页面,可看到文字在交替变色显示,以吸引人的注意,效果真心不错哦,把代码拷贝到你的网站后,修改成想要的文字就OK了. 查看效果:http://keleyi.com/ ...

  9. [转]实现文字跑马灯效果,scrolling text from right to left

    <div> <marquee direction="left" behavior="scroll" scrollamount="10 ...

  10. Linux2.6内核进程调度系列--scheduler_tick()函数1.总体思想

    参考的是ULK第三版,Linux2.6.11.12内核版本. 调度程序依靠几个函数来完成调度工作,其中最重要的第一个函数是scheduler_tick函数,主要步骤如下: /** * 维持当前最新的t ...