mongoDB 常用函数

use mock # 切换数据库
show collection # 列出所有的表
db.orders.findOne() # 查询orders表中第一个

db.fruit.insertOne({name:"apple"}) # fruit表中插入一个水果
# 结果:插入成功,并成功添加一个默认主键ObjectId。
{
	"acknowledged" : true,
	"insertedIds" : [
    	ObjectId("60389e7c3618daf1dd0f67fa"),
  ]
}
#

db.fruit.insertMany([{name:"apple"},{name:"banana"},{name:"pear"}]) # 插入多个水果
db.fruit.find() # 列出表中的所有数据

关于find查询

  • 关于find
    • find 是MongoDB中查询数据的基本指令,相当于SQL中的SELECT。
    • find 返回的是游标。
find()更多函数 作用 示例(以订单表orders为例) 说明
find() 查询 # 获取游标,并存入变量中。
var cursor = db.orders.find()
var cursor = db.orders.find( {type : 2 } )

条件查询。
next() cursor.next() 获取下一条文档。
printjson() printjson(mycursor.next()) 以 JSON 形式打印下一条。
forEach() mycursor.forEach(function(obj{printjson(obj)}))
mycursor.forEach(printjson)
对游标获取到的对象进行遍历并打印。
效果一样。
DBQuery.shellBatchSize print(DBQuery.shellBatchSize) 读取游标迭代次数,即每页显示的文档个数。
DBQuery.shellBatchSize = 10 修改游标迭代次数。
sort() db.orders.find().sort({money:-1}) 订单表以总价从高到低排序。(1 升序,-1降序)
toArray() db.orders.toArray() 将查询结果集放入 JSON 数组。
count() db.orders.count() 查询的结果个数。
skip() db.orders.skip(100) 游标跳到指定下标100。(下标也是从0开始的,所以100就是第101个。)
limit() db.orders.limit(10)
db.orders.skip(100).limit(5)
查10个。
从下标100开始,查5个。
objsLeftInBatch() mycursor.objsLeftInBatch() 查看当前游标未被迭代的文档数量。
addOption() mycursor.addOption() 待完善 为游标设置辅助选项,修改游标的默认行为。
hint() 强制使用指定的索引。
explain() 调试,获取查询执行过程的报告。
snapshot() 对查询结果使用快照。

mongoDB 常用函数

上一篇:SQL Server分页性能比较


下一篇:【教程】MySQL表锁定