创建数据库 | use database_name | 新建(切换)名为database_name的数据库 | |
查看数据库 | db | 查看当前所在数据库 | |
查看全部数据库 | show dbs | | |
删除数据库 | db.dropDatabase() | 删除当前数据库 | |
创建集合 | db.createCollection(name, options) | name: 要创建的集合名称 options: 可选参数, 指定有关内存大小及索引的选项 | |
查看全部集合 | show tables/show collections | | |
删除集合 | db.runoob.drop() | 删除名为rundrop的集合 | |
插入文档 | db.document.insertOne(document),db.document.repliceOne(),db.document.insertMany(),save()在新版本已经废弃。 | db.document.insert({title: ‘MongoDB 教程’, description: ‘MongoDB 是一个 Nosql 数据库’, by: ‘菜鸟教程’, url: ‘http://www.runoob.com’, tags: [‘mongodb’, ‘database’, ‘NoSQL’], likes: 100 }) | |
更新文档 | db.collection.update(document) | db.collection.update( , , { upsert: , multi: , writeConcern: } ) | query : update的查询条件,类似sql update查询内where后面的。 update : update的对象和一些更新的操作符(如
,
,
,inc…)等,也可以理解为sql update查询内set后面的 upsert : 可选,这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。 multi : 可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。 writeConcern :可选,抛出异常的级别 |
删除文档 | db.collection.remove(,{justOne:,writeConcern:}) | | query :(可选)删除的文档的条件。 justOne : (可选)如果设为 true 或 1,则只删除一个文档,如果不设置该参数,或使用默认值 false,则删除所有匹配条件的文档。 writeConcern :(可选)抛出异常的级别。 |
查询文档 | db.document.find(query,projection).pretty() | | query :可选,使用查询操作符指定查询条件 projection :可选,使用投影操作符指定返回的键。查询时返回文档中所有键值, 只需省略该参数即可(默认省略)。 |
指定查询数量 | limit | | |
指定跳过数量 | skip | | |
排序 | sort | | |
索引 | db.collection.createIndex(keys, options) | db.col.createIndex({“title”:1}) | |
聚合 | aggregate:sum,avg,min,max,push,addToSet,first,last | db.mycol.aggregate([{KaTeX parse error: Expected '}', got 'EOF' at end of input: …roup : {_id : "by_user", num_tutorial : {$sum : 1}}}]) | by_user是document内字段赋值给_id,根据升序求和给num_toutorial |