Mogodb
json格式存储的非关系型数据库
一、常用操作:
#创建集合
db.createCollection(name,{capped:true,size:10})
#更改数据
db.集合名称.update(
查询条件,
{$set{}}#$set更改某一属性,默认则替换所有属性,
{multi:<boolean>}#更改属性条数,默认一条
)
#删除集合
db.集合名称.drop()
#查询集合中所有数据
db.集合名称.find()
#插入数据
db.集合名称.insert({})
#删除数据
db.stu.remove({})
二、聚合,通过管道方式
db.stu.aggregate([
{$match:{age:{$gt:20}}},#筛选
{$group:{_id:‘$gender‘,counter:{$sum:1}}},#分组
{$project:{_id:0,counter:1}},#投影,1是显示,0不显示
{$sort:{_id:1}},
{$skip:1},#跳过几个数据
{$limit:1}#获取几个数据
])
#分割属性,没有对应属性时防止原属性丢失
db.ti.aggregate([
{$unwind:{path:‘$size‘,preserveNullAndEmptyArrays:true}}
])
三、数据库备份与恢复
备份:mongodump -h 地址 -d 数据库名 -o 文件夹路径
恢复:mongorestore -h 地址 -d 新数据库名 --dir 文件路径
四、Mongo 与Python 的交互
from pymongo import *
#获得客户端,建立链接
client = MongoClient(‘mongodb://py3:[email protected]:27017/py3‘)
#切换数据库
db = client.py3
#获取集合
stu = db.stu
#增加
stu.insert_one({‘name‘:‘张三‘})
#修改
stu.update_one({‘name‘:‘张三‘},{‘#set‘:{‘name‘:‘李四‘}})
#删除
stu.delete_one({‘name‘:‘李四‘})
#查询
cursor = stu.find({‘age‘:{‘$gt‘:20}}).sort(‘_id‘,-1).skip(1).limit(1)
for i in cursor:
print(i[‘name‘])
原文地址:https://www.cnblogs.com/dalun101/p/9373941.html