MongoDB学习笔记<四>

今天继续学习MongoDB的相关知识,主要包括如下:

--find详解

--分页与排序

--游标和其他知识


1.指定返回的键

db.person.find({},{"_id":0,"name":1,"country":1})这样就只把name键和country键查询出来了,注意其他的如果不写默认不显示,但是如果_id如果不写,默认是显示的.

2.查询条件

db.person.find({"age":{$gte:25,$lte:27}},{"_id":0,"name":1,"country":1})查询年龄在25-27岁之间的学生的name和country.

db.person.find({"country":{$ne:"Korea"}},{"_id":0,"Math":1})查询所有不是韩国学生的数学成绩

3.包含或不包含

$in 或 $nin

db.person.find({"country":{$in:["USA","China"]}},{"_id":0,"Math":1})查询国籍是美国或者中国的学生数学成绩

db.person.find({"country":{$nin:["USA","China"]}},{"_id":0,"Math":1})查询国籍不是美国或者中国的学生的数学成绩

4.or查询

$or

db.person.find({$or:[{"Chinese":{$gt:85}},{"English":{$gt:90}}]},{"_id":0,"name":1,"Chinese":1,"English":1})查询语文成绩大于85或者英语吧成绩大于90的学生信息

5.正则查询

db.person.find({name:/li/i},{"_id":0,"name":1})查询出名字中含有"li"的学生的姓名

6. $not的使用

db.person.find({name:{$not:/li/i}},{"_id":0,"name":1})查询出名字中不含有"li"的学生的姓名

注意:$not和$nin的区别在于:$not可以用在任何地方,而$nin只可以用在集合上

7.数组查询$all和index应用

查询喜欢看MongoDB和JS这两本书的学生

db.person.find({books:{$all:["MongoDB","JS"]}},{"_id":0,"name":1})

查询第二本书是 JAVA的学生信息

db.person.find({"books.1":"JAVA"})

8.查询指定长度数组size

db.person.find({"books":{$size:4}})

9.查询出jim的书籍的数量

var jim =  db.person.find("name":"jim")
while(jim.hasNext()){
   obj = jim.next();
   print(obj.books.length)
}
10.$slice操作符返回文档指定数组的内部值

查询出jim书架中的第2-4本书

db.person.find({"name":"jim"},{books:{$slice:[1,3]}})

查询出最后一本书

db.person.find({"name":"jim"},{books:{$slice:-1}})


这次先到这,下次继续,游标与排序.







  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值