作者:手机用户2602898385 | 来源:互联网 | 2023-05-18 00:09
mongodb索引:1,mongodb支持索引,以提升查询速度2,mongodb是介于关系型与非关系型数据库之间的数据库3,可以索引文档中的任何字段#向t1数据库插入10万条数据大
mongodb 索引:
1,mongodb支持索引,以提升查询速度
2,mongodb 是介于关系型与非关系型数据库之间的数据库
3,可以索引文档中的任何字段
# 向 t1 数据库插入 10万条数据 大约需要 10秒
for(i=0;i<100000;i++){db.t1.insert({name:'test'+i,age:i})}
# 查找 第 10000 条数据 explain() 可以开启性能测试 executionTimeMillis为 39 毫秒
db.t1.find({name:'test10000'}).explain('executionStats')
# 为集合 name字段 建立索引
db.t1.ensureIndex({name:1})
# 建立索引之后执行时间是 0 毫秒
注意: 查询 age 字段的话 还是 39 毫秒 因为此字段没有设立索引
db.t1.find({name:'test10000'}).explain('executionStats')
#查看文档所有索引
db.t1.getIndexes()
# 删除 联合索引
db.t1.dropIndex({"name":1,"age":1})
# 建立唯一索引
db.t1.ensureIndex({"name":1},{"unique":true})
# 建立联合索引
db.t1.ensureIndex({name:1,age:1})
# 对于联合索引的查询 还是按照 联合索引的顺序进行查找 前后一样 不能只查询一个
db.t1.find({name:'test10000'},{age:100000}).explain('executionStats')
Mongodb 与python 交互需要安装 pymongo 包
对于 pymongo 包之中的对象介绍:
MongoClient对象:
client = MongoClient('主机ip',端口)
Database对象:
# client对象获取获得数据库对象
db = client.数据库名称
Collections对象:
# 通过db对象获取集合对象
collectiOns= db.集合名称
集合操作方法:
'''
insert_one:加入一条文档对象
insert_many:加入多条文档对象
find_one:查找一条文档对象
find:查找多条文档对象
update_one:更新一条文档对象
update_many:更新多条文档对象
delete_one:删除一条文档对象
delete_many:删除多条文档对象
'''