MongoDB-查询关键字/排序等

查询关键字

并列查询$and

# 条件都成立才可以查询到结果
db.stutent.find({$and:[{name:"小漩涡"},{age:30}]})

或查询$or

# 有一个条件成立就可以查询到结果
db.stu.find({$or:[{name:"绿绿"},{name:"小黑"}]})

子查询$all

 all后面列表中的元素部分顺序,只要在test_list中存在就可以查询到所有结果

> db.stutent.find({"test_list":{$all:[1,""]}})

{ "_id" : ObjectId("5d2eee1314ff51d814e40365"), "name" : "小漩涡", "age" : 30, "test_list" : [ 1, 2, 3, 4, "", 1000 ], "hobby" : [ "烫头" ] }

范围查询$in

["绿绿","黑黑","红红","小黑"]
# 只要符合列表中的名字全部查找出来
db.stu.find({name:{$in:["绿绿","黑黑","小红","小黑"]}})

排序/选取/跳过

排序:sort 
db.stu.find().sort({ age:1 }) 1正序 -1倒序

选取:limit
db.stu.find().limit(2) 选取两条数据

跳过:skip
db.stu.find().skip(2) 跳过前两条数据

选择中间两条 or 跳过前N条
db.stu.find().skip(0).limit(2).sort({ age:-1 })

优先级:先排序 - 跳过 - 选取

# 分页
var page = 1
var num = 2
var sk = (page-1) * num
db.stu.find().skip(sk).limit(num).sort({ age:-1 })
原文地址:https://www.cnblogs.com/songzhixue/p/11203534.html