MongoDB是非关系型的数据库,提供了类似关系型的操作命令。
常用的操作命令
插入
db.集合.insert({key:value,........})
show collections
查询数据
db.集合的名字.find()db.集合的名字.find().count()
//记录数据的总的条数
模糊查找 :db.集合的名字.find({“name”:/正则表达式/})
db.集合的名字.find().sort(“age”:-1) //排序根据年龄 负值降序
db.集合的名字.find({$or:[{字符:值},{字符:值}]}) //或者操作db.集合的名字.find({"age":{$gt:15,$lt:18}})
//找到年龄大于15小于18的数据
比较操作 lt< gt> lte<= gte>=
删除数据
修改数据
db.集合的名字.update({“name”:”原来的名字”},{$set:{key:值}})
db.集合的名字.update({“name”:”原来的名字”},{$set:{key:值}},true,true) //第一个true表示修改的数据不存在的时候是否新增,第二个true为是否同时修改多条。db.集合的名字update({},{age:{$inc:{"age":2}},false,true})
//所有的字段年龄都加2
分页:
db.集合的名字.find().skip((page - 1) * pageSize).limit(Number(pageSize))
//skip 跳过 limit() 显示的条数
删除数据表:
删除数据库:
db.dropDatabase()
mongdb时间类型
Date()
显示当前的时间new Date
构建一个格林尼治时间 可以看到正好和Date()相差8小时,我们是+8时区,也就是时差相差8,所以+8小时就是系统当前时间ISODate()
也是格林尼治时间
> Date()
Sun Jan 24 2016 20:39:57 GMT+0800 (CST)
> new Date()
ISODate("2016-01-24T12:40:24.035Z")
> ISODate()
ISODate("2016-01-24T12:52:33.341Z")
时间查找
>db.tb1.find({time:{$gt:new Date(1363746981289)}})
> db.tb1.insert({mydate:ISODate("2012-11-02 07:58:51")})
> db.tb1.insert({mydate:ISODate("20121102 07:58:51")})
> db.tb1.insert({mydate:ISODate("20121102")})
//在 shell 中执行
for(var item in comLs)
{
//comLs[item].compId+" " +comLs[item].comName+" "+comLs[item].UserCount +" "+
printjson(db.getCollection('chat_message')
.find({"CompId":comLs[item].compId,"CreateTime":{$gt:new Date("2020-10-19"),$lt:new Date("2020-10-27")}})
.count());
}