新建/选择数据库
use test
显示数据库列表
show dbs
创建表
db.createCollection(“test”)
展示表
show collections
删除当前数据库
db.dropDatabase()
获取当前环境的数据库名
db.getName()
数据库命令帮助
db.help()
删除集合
db.name.remove()
集合命令帮助
db.name.help()
文档操作查询
查询所有
db.name.find()
查询第一条记录
db.name.findOne()
按条件查找
db.name.find({“name”:”miloer”})
指定返回值查询
db.name.find({},{“name”:1})
{}代表所有
name代表所查字段
1:代表所查询的数据中包含name属性
0:与1相反
$ gt 查询name表中年龄大于20的数据
db.name.find({“age”:{$gt:20}})
$ gte 查询name表中年龄大于等于20的数据
db.name.find({“age”:{$gte:20}})
$ lt 查询name表中年龄小于20的数据
db.name.find({“age”:{$lt:20}})
$ lte 查询name表中年龄小于等于20的数据
db.name.find({“age”:{$lte:20}})
$ or 查询name表中满足年龄等于20 或者21的数据
db.name.find({$or:[{age:20},{age:21}]})
注意插入的age对象必须为number类型。我第一次插入的是字符串,就没查出来(滑稽).
过滤查询
包含查询
查询表中name属性包含test的文档
db.name.find({name:/test/})
包含头查询
查询表中name属性开头包含’test’的文档
db.name.find({name:/^test/})
排序查询
升序
db.name.find().sort({age:1})
降序
db.name.find().sort({age:-1})
限定查询条数
skip
限定起始查询条(从第五条开始查询)
db.name.find().skip(5)
limit
限定查询5条(查询至第五条为止)
db.name.find().limit(5);
文档操作 增、删、改
增
insert 插入文档
单条插入
db.name.insert({username:’test’})
批量插入
var query = [{‘username’:1},{‘username’:2}];
db.name.insert(query)
池插入
var query = [{‘username’:1},{‘username’:2}];
db.name.bathInsert(query);
save
save 与insert类似,insert插入时如果存在主键会报错,save插入如果存在会覆盖。效率比insert要低。
删
删除指定文档
db.name.remove({‘userName’:1})
删除指定文档中的第一条
db.name.remove({‘userName’:1},{justOne:true})
删除所有文档
db.name.remove({})
更新
$set
db.name.update({‘userName’:1},{$set:{‘userName’:2}})
$inc
自增 ,agree+=10
db.name.update({userName:’test’},{$inc:{agree:10}})