mongodb基本操作

MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。

在高负载的情况下,添加更多的节点,可以保证服务器性能。

MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案。

MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成。MongoDB 文档类似于 JSON 对象。字段值可以包含其他文档,数组及文档数组。

基本操作:

远程连接:mongo -u username -p password ip:port/dbname(库名)
显示所有库:show dbs
选择某库:user db
创建库:user newDBName
删除库:db.dropDB()
查看全部集合:show collections
添加集合:db.collection.insert({"name","hello"})    如果集合不存在,会自动创建集合再添加数据
                 db.collection.insertOne({"key","value"})
                 db.collection.insertMany([{"a",1},{"b",2},{"c",3}])
删除集合:db.collection.drop()
清空集合:db.collection.remove({})
查看集合:db.collection.find()
                 db.collection.find().pretty()
更新集合:db.collection.update({"key":"a"},{$set:{"a":"aaa"}},{multi:true})    前面是update操作的where条件,后面是需要更新的数据,当集合中存在多个相同的key时,mongo只更新第一条数据,使用{multi:true} 就可以修改多条相同key的文档
                 save({……})    
3.2版本新功能:
                db.collection.updateOne()
                db.collection.updateMany()    不需要multi
where条件:等于    {key:value}
                    小于    {key:{$lt:value}}
                    大于    {key:{$gt:value}}
                    小于或等于    {key:{$lte:value}}
                    大于或等于    {key:{$gte:value}}
                    不等于            {key:{$ne:value}}
                    AND    {key1:value,key2:value2}
                    OR        {$or:[{key1:value1},{key2:value2}]}
                    模糊查询:db.collection.find({key:/value/})
                    包含查询:db.collection.find({key:{$in:[key,key2]}})
                    不包含查询:db.collection.find({key:{$nin:{key1,key2}}})
                    去重:    db.collection.distinct(value)
 
db.collection.find({key:{$type:2}})    查询key为String类型的数据
分页查询    db.collection.find().limit(pageNumber).skip(pageSize)
匹配数据类型    $type
posted @ 2018-07-09 13:07  沟渠映明月  阅读(120)  评论(0编辑  收藏  举报