-
查看所有数据库
show dbs
-
创建数据库/使用数据库
use 数据库名
-
删除数据库
db.dropDatabase()
-
查看当前数据库
db
-
修改数据库名
方案一 //拷贝数据库 db.copyDatabase("old_name","new_name") //删除原数据库 use old_name db.dropDatabase() 方案二 db.adminCommand({renameCollection: "db1.test1", to: "db2.test2"})
-
创建表
db.createCollection(“table_name", {capped:true, size:100000})
-
查看当前数据库所有表
show collections
-
往表中插入数据
db.table_name.insert({“name”:"html5"})
-
删除表
db.collection.drop()
-
更新数据
-
updata
multi为true表示删除修改所有符合条件的数据,默认为false db.articles.update({“likes":100},{$set:{"by":"zhan"}},{multi:true})
-
save
-
参数自加
db.articles.update({“条件”:’值’},{$inc:{“自增字段":步长},{multi:true})
-
-
删除操作
1表示只删除一个 db.articles.remove({“by”:”lzhan"},1) 删除所有数据 db.col.remove({})
-
查询操作
and语句 db.col.find({key1:value1, key2:value2}).pretty() or语句,关键字$or db.col.find({$or: [{key1: value1}, {key2:value2}]}).pretty() $gt大于,$lt小于 db.articles.find({"likes":{$gt:100},"likes":{$lt:1000}}).pretty()
-
修改器
- $set
修改器来指定一个键值,如键不存在则创建他 - $unset
删除一个键 - $inc
$inc其用来增加或减少已有的键的键值,或者在键不存在的时候创建一个键
表达式
-
$and
db.position.find({"title":"python开发","addr":"苏州"}) //也可以写做 db.position.find({$and:[{"title":"python开发"},{"addr":"苏州"}]})
-
$or
db.position.find({$or:[{"title":"python开发"},{"addr":"苏州"}]})
-
$not
db.person.find( { age: { $not: { $gt: 20 } } } )
-
$nor所有列举项都不满足
db.position.find({$nor:[{"title":"python开发"},{"addr":"苏州"}]})
-
$exists查询指定字段存在的文档
db.position.find( { phone: { $exists: true } } )
-
$mod取余条件查询
查询age字段的值除以2余0的文档: db.person.find( { age: { $mod: [ 2, 0 ] } } )
-
$regex模糊查询,正则表达式查询
db.position.find({"title":{$regex:/开发师/}}) //^开头,$结尾 db.position.find({"title":{$regex:/^python/}}) //i不区分大小写,m忽视换行符 db.position.find({"title":{$regex:/^python/i}}) //可以直接写正则表达式 db.position.find({"title":/^python/i})
-
limit(),skip()
//limit显示前两行,skip跳过前两条数据,最终显示3,4条数据 db.position.find().limit(2).skip(2)
-
sort()排序
//1是升序,2是降序 db.position.find().sort({"title":1})
-
索引
//创建索引,1升序,-1降序 db.position.ensureIndex({"title":1}) //查看索引 db.position.getIndexes() //查看索引大小 db.position.totalIndexSize() //删除索引 db.position.dropIndex("索引名")