mongodb数据库的拓展

1:使用mongodb创建索引

1.1:为什么要创建索引

  • 首先这是一个优化的问题,创建索引可以更快速的查找到需要的数据,这个就像是字典中的查字一个道理

1.2:如何优化程序

  • 使用一些常用的数据结构和常用的算法
  • 尽量减少程序循环的次数
  • 使用一些设计模式
  • 使用一些优秀的框架

1.3:创建索引

  • 注意:创建索引就是增加查询的效率,这个在前面已经提到过了
  • 在mongodb中当查询出来的数据特别多的时候,一次在终端处只展示20个查询出来的数据

要查询的数据的代码

for(i=0;i<100000;i++){db.test.insert({name:'test'+i,age:i})}

要查询的数据

db.test.find({name:"test9999"})

显示查询操作的详细信息

db.test.find({name:'test9999'}).explain('executionStats')
  • 当中的“executionTimeMillis”参数表示的是查询到这个数据所消耗的时间

查看索引

db.test.getIndexes()
  • 查看索引的目的是为了查看有哪些数据可以用来创建索引

创建索引

db.test.ensureIndex({name:1})
  • 以name的方式创建索引

通过有索引的方式来查找数据

db.test.find({name:'test9999'}).explain('executionStats')

删除索引

db.test.dropIndex({name:1})

2:python与mongodb的交互

2.1:准备工作

  • 1:需要先安装有mongdb这个数据库
  • 2:在python中要有pymongo这个模块

2.2:使用python来操作mongodb数据库

  • 1:导入pymongo这个模块
  • 2:连接mongo数据库
  • 3:进行增删改查操作

pymongo的安装

  • 在终端控制程序中输入代码
pip lnstall pymongo

连接数据库

  • 方法一:不指定端口和地址
client = MongoClient()
  • 方法二:指定数据库的端口和地址
client = MongoClient(host='127.0.0.1', port=2017)

插入数据

  • 可以分为插入一条数据和插入多条数据

插入一条数据

# 方法一:使用insert插入数据
client[数据库的名字][表的名字].insert({‘key’:‘value’})
# 方法二:使用insert_one插入一条数据
client[数据库的名字][表的名字].insert_one({‘key’:‘value’})

插入多条数据

client[数据库的名字][表的名字].insert_mary({‘key’:‘value’})

查询数据

  • 分为查询一个数据和查询多个数据

查询一个数据

# 无条件的查询数据
client.db.find_one()		# 注意:这个方法只返回查询到的第一个数据

# 有条件的查询数据
client.db.find_one(要查询的条件)

查询多个数据

# 无条件的查询数据
client.db.find()		# 注意:在使用查询多个数据的时候,要使用for循环来遍历,才可以清楚的查询到数据

# 有条件的查询多个数据
client.db.find(要查询的条件)		# 同样要使用for循环来遍历一下才可以清楚的查询到数据
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值