首页 > 代码库 > MongoDB 学习笔记(二) 之查询

MongoDB 学习笔记(二) 之查询

最简单的查询 个人认为mongoDB是面向对象的吧。

例如最简单的查询  整个数据集只有三条数据





第一查询姓名为张三的  数据





查询的条件比较好写 随意   db.collection.find(查询条件)  例如


15


得到的结果是这样 


如果你不想返回某个字段呢 ,你可以自己定义返回的字段值 语法这样 db.collection.find({查询条件},{返回字段})


16


我们看到每次查询 “_id” 这个字段 都返回  我们可以将它设置为0 这样的话就不会返回 


如 





查询条件里的键值对中的值需为常量这样查询是不被允许的  > db.student.find({"name" : "this.sex"}) 





查询条件符号 


$lt  less than   

$lte   less than or equal

$gt   greater than 

$gte  greater than or equal

$in     in  

$nin  not in 

$or    or

$mod

$nod  not equal mode



例如查询年龄小于20的学生 


18


或者查询年大于18而小于26的学生


19


查询基本上就是这样啦  


年龄为18或者25的学生  $in语法


20


$or   db.collection.find({"$or":[{condition0},{condition1}]})


21 $or 语法



查询条件为最小单位 ,即可简单如它  {"name":"zhangsan"} 姓名是张三的  


也可已复杂如它    {"$or":[{"name":{"$in":["zhangsan","lisi"]}},{"age":{"$lt":26,"$gt":18}}]}

名字是张三或者李四的  或者 年龄 小于26大于18的




有必要说下mongo的Date类型  


new Date() 返回的是一个Date Object 而 Date()返回的是一个String类型的字符串  JavaScript就是这么干的,如果混着用的话 会出问题当查询,更新,或者删除的时候,所以用date类型的时候要小心加小心。另外日期对象是可以比较大小的(存储的是 新纪元到当前时间(格林尼治)的毫秒数),而String我先呵呵了

可以做个小实验来区别





明天继续探索