MongoDB数据库常用操作命令
- use school 切换到school逻辑库中,不存在会进行创建
- show dbs 查看逻辑库
- db.student.save({name:"meto",sex:"male",age:25,city:"Beijing"}) 向数据表中保存数据
- db.student.find() 查找数据表中的数据
- db.dropDatabase() 删除逻辑库
管理集合
db.createCollection('ss') 创建集合
show collections 查看集合
db.ss.drop() 删除集合
db.ss.count() 查看集合记录数量
db.ss.dataSize() 查看数据空间容量
db.ss.renameCollection('sss') 重命名集合
使用save函数添加一条或者多条记录
db.ss.save([
{name:"meto1", sex:"男", age:24},
{name:"meto2", sex:"女", age:25},
{name:"meto3", sex:"男", age:24},
])
mongoDB表达式必须携程JSON格式
表达式 意义
$lt 小于
$gt 大于
$lte 小于等于
$gte 大于等于
$in 包括
$nin 不包括
$ne 不等于
$all 全部
$not 取反
$or 或关系
$exists 含有字段
$regex 正则表达式
// regex
db.ss.find({"name":{"$regex":"^代课"}})
// all
db.ss.save({name:"meto",role:["代课老师","班主任","校长"]})
db.ss.find({role:{$all:["班主任","校长"]}})
//not
db.ss.find({
age:{$not:{$gte:28,$lte:30s}}
})
// or
db.ss.find({$or:[{age:{$lt:30},sex:"男"},{age:{$lt:25},sex:"女"}]})
// exists
db.ss.find({total:{$exists:1}})
MongoDB支持正则表达式查找数据
//^表示开头,$表示结尾
db.ss.find({name:/^张/})
db.ss.find({name:/^[a-zA-Z]{2,10}$/})
分页查找数据
- 可以利用skip()和limit()实现分页查询
#取十条记录
db.ss.find().limit(10)
#从第20条记录开始,往后取10条记录
db.ss.find().skip(20).limit(10)
数据排序
- sort()函数可以用来对结果集进行排序,1代表升序,-1代表降序
db.ss.find().sort({name:1})
db.ss.find().sort({name:-1}).skip(10).limit(10)
- 排除重复 distinct()函数替代find()函数查找不重复的记录
db.ss.distinct("name")
// 返回1是降序,-1是升序
db.ss.distinct("name").sort(function(){return -1})
db.ss.distinct("name").slice(0,5)