mongodb命令行操作

2017-01-08  本文已影响0人  薛定谔的大头猫
查询数据库

show dbs

切换数据库dbtest

use dbtest

查询库的集合collection

show collections

创建集合empolyee

db.createCollection('empolyee')

插入数据

db.empolyee.insert({'uname':'beihaison','age':24,'salary':3000})

查询集合数据条数

db.empolyee.count()

查询数据

db.empolyee.find({age:24}) db.empolyee.find({age:{$gt:24}}) #相当于 age > 24 db.empolyee.find({age:{$lt:24}}) #相当于age < 24 db.empolyee.find({age:{$lt:24},salary:{$gt:4000}}) #相当于age < 24 && salary > 4000 db.empolyee.find({$or:[{salary:{$lt:4000}},{salary:{$gt:20000}}]}) #相当于salary < 4000 || salary > 20000

查询指定列

db.empolyee.find({},{age:1,salary:1})

查询uname中包含 ‘e’的数据

db.empolyee.find({uname:/e/})

查询以a开头的数据

db.empolyee.find({uname:/^a/})

查询age列,并去掉重复数据

db.empolyee.distinct('age')

查询前十条数据

db.empolyee.find().limit(10)

查询1条以后的所有数据(跳过1条数据)

db.empolyee.find().skip(1)

查询第1条数据

db.empolyee.findOne()

按salary字段升序

db.empolyee.find().sort({salary:1})

按salary字段降序

db.empolyee.find().sort({salary:-1})

根据uname修改age

db.empolyee.update({uname:'beihaison'},{$set:{age:20}},false,true)

db.collection.update(criteria, objNew, upsert, multi)

ceiteria : update 查询条件 ,理解为sql update查询内where 后面的
objNew : update的对象和一些更新操作符 (如$,$inc...)等, 可以理解为sql update查询内set后面的
upsert : 如果不存在update记录,是否查询objNew,true为插入,默认为false不插入
multi : 默认为false,只更新找到的第一条记录,ture表示查找的所有记录全部更新

将age增加5

db.empolyee.update({uname:'beihaison'},{$inc:{age:5}},false,true)

删除数据

db.empolyee.remove({uname:'beihaison'})

集合重命名

db.empolyee.renameCollection('t_emp')

删除集合

db.empolyee.drop()

删除数据库

db.dropDatabase()

创建索引

db.empolyee.ensureIndex({uname:1}) #1-升序索引,-1降序索引

创建唯一索引

db.empolyee.ensureIndex({uname:1}, {unique:true})

上一篇下一篇

猜你喜欢

热点阅读