1、db.collection.updateMany() 修改集合中的多个文档。
db.getCollection('user').find({ "pId":"3332a512df604a74a72f267cf246"}).updateMany({ "pId":"c8018dd802a644a19517790336f"})
2、模糊查询
db.getCollection('user').find({ name:{ $regex:"AA"}})
db.getCollection('user').find({ "name":{ $regex:/AA/ }})
db.getCollection('user').find({ name:/AA/})
3、查询name是否为AA,BB,CC,DD的记录
db.getCollection('user').find({ "name":{ $in:["AA","BB","CC","DD"]}}) //属于 - in
db.getCollection('user').find({ "name":{ $nin:["AA","BB","CC","DD"]}}) //不属于 - nin
4、按照时间排序
db.getCollection('user').find({ name:{ $regex:"AA"}}).sort({ lastUpdatedTime : 1 }) //时间正序
db.getCollection('user').find({ name:{ $regex:"AA"}}).sort({ lastUpdatedTime : -1 }) //时间倒序
5、字段是否存在
db.getCollection('user').find({ age:{ $exists:true}})
6、对数组中的某一个元素进行查询
db.getCollection('template').find({ "content.pages.questions.type":"A"})
7、limit() 和skip() 方法操作
使用limit() 方法来读取指定数量的数据,limit方法接受一个数字参数作为读取的记录条数
使用skip() 方法来跳过指定数量的数据,skip方法接受一个数字参数作为跳过的记录条数
db.getCollection('user').find({ }).limit(5).skip(1) — 跳过第1条,展示第2条到第6条
8、时间范围查询
greater than(大于)
less than(小于)
(>) 大于 - $gt
(<) 小于 - $lt
(>=) 大于等于 - $gte
(<= ) 小于等于 - $lte
db.getCollection('student').find({ "createdTime":{ $lt:new Date(2019,8,16)}}) //创建时间在2019.8.16之前的记录
db.getCollection('student').find({ "createdTime":{ $lte:new Date(2019,8,31),$gte:new Date(2019,3,1)}}) //创建时间在2019.3.1到2019.8.31之间的记录
9、更新语句,如果你要修改多条相同的文档,则需要设置 multi 参数为 true
db.getCollection('user').update({ "name":"张三"},{ $set:{ "name":"李四"}},{ multi:true})
10、具体查询文档中某个字段内包含的具体值
db.getCollection('user').find({ "content.studentId.username" : "AA"})
还没有评论,来说两句吧...