数据库操作
创建数据库  use {dbName}
查看所有数据库 show dbs
Mongo文档操作
条件操作符
OR 条件
or条件语法如下:
| 12
 3
 4
 
 | $or: [JSON criteria1,
 JSON criteria2
 ]
 
 | 
操作条件即为criteria1 or criteria2,如查找age<20与age>20的值
| 12
 3
 4
 5
 6
 7
 
 | db.user_base.find({
 $or:[
 {age:{$gt:30}},{age:{$lt:20}}
 ]
 }
 )
 
 | 
大小比较条件操作
| 操作 | 操作符 | 
| 大于 | $gt | 
| 大于等于 | $gte | 
| 小于 | $lt | 
| 小于等于 | $lte | 
插入文档
MongoDB 使用 insert() 或 save() 方法向集合中插入文档,区别在于insert()若以存在相同_id则报duplicate key,save()若指定了_id且_id对应数据存在,则执行更新,反正执行保存。插入语法如下:
| 12
 3
 4
 
 | db.{collectionName}.insert({name:'Wilson',
 age:15
 })
 
 | 
数组插入:
| 12
 3
 4
 5
 
 | db.user_base.insert({name:'Wilson',
 age:15,
 hobby:['eat','drink','play','sleep']
 })
 
 | 
更新文档
MongoDB条件更新使用update()函数,语法如下:
| 1
 | db.{collectionName}.update(JSON criteria, JSON objNew, boolean upsert,boolean multi )
 | 
- criteria: 更新条件,类似sql的where条件,JSON类型属性值
- objNew: 更新值,类似于sql的set属性值,JSON类型属性值
- upsert: 默认false,如果不存在criteria的条件,是否插入新的记录(objNew,criteria)
- multi: 默认false,是否更新所有找到的记录,默认只更新第一条
例:
| 12
 3
 4
 5
 6
 
 | db.user_base.update({'name':'Wilson'},
 {'name':'Wilson','age':33},
 false,
 false
 )
 
 | 
删除文档
| 12
 3
 4
 5
 6
 7
 
 | db.{collectionName}.remove(JSON criteria,
 {
 justOne: <boolean>,
 writeConcern: <document>
 }
 )
 
 | 
- criteria :必须,删除的文档的条件,空({})则删除全部。
- justOne : (可选)若为true 或 1,则只删除一个文档。
- writeConcern :(可选)抛出异常的级别。
例子:
| 12
 3
 4
 5
 6
 7
 8
 9
 10
 
 | # 清空user_base数据库所有文档db.user_base.remove();
 
 # 删除第一条 age >= 20 的数据
 db.user_base.remove(
 {age: { $gte:20 }},
 {
 justOne: true
 }
 );
 
 | 
查询文档
| 12
 3
 4
 
 | db.{collectionName}.find(JSON criteria,
 JSON optionalFields
 ).pretty()
 
 | 
- criteria:可选,查询条件,空则查询全部数据
- optionalFields:可选,显示选定字段,如{name:0}则查询结果不包含name字段
只查询指定字段
limit()限制返回数量
| 1
 | db.{collectionName}.find().limit(NUMBER)
 | 
skip()跳过指定数量
| 1
 | db.{collectionName}.find().limit(NUMBER).skip(NUMBER)
 | 
sort()排序
sort()方法可以通过参数指定排序的字段,并使用 1 和 -1 来指定排序的方式,1为升序,-1为降序,语法如下:
| 1
 | db.{collectionName}.find().limit(NUMBER).sort({"key": 1})
 |