mongodb的索引
时间:2023-3-1 19:59 作者:wen 分类: mongodb
一、为什么需要创建索引
- 加快查询速度
- 进行数据的去重
二、创建简单的索引方法
语法:db.集合名.ensureIndex({属性:1}),1表示升序,-1表示降序
三、索引的查看
默认情况下_id是集合的索引 查看方式
db.集合名.getIndexes()
四、删除索引
语法:db.集合名.dropIndex({'索引名称':1})
db.stu.dropIndex({name:1})
db.stu.dropIndex('name_1')
五、创建唯一索引
在默认情况下mongodb的索引域的值是可以相同的,创建唯一索引之后,数据库会在插入数据的时候检查创建索引域的值是否存在,如果存在则不会插入该条数据,但是创建索引仅仅能够提高查询速度,同时见底数据库的插入速度。
1、添加唯一索引
db.集合名.ensureIndex({'字段名':1},{'unique':true})
2、利用唯一索引进行数据去重
根据唯一索引指定的字段的值,如果相同,则无法插入数据
db.stu.ensureIndex({'name':1},{'unique':true})
六、建立复合索引
在进行数据去重时候,可能用一个域来保证数据的唯一性,这个时候可以考虑建立复合索引来实现。
建立复合索引的语法:
db.集合名.ensureIndex({'字段名1':1,'字段名2':1})
七、建立索引注意点
- 根据需要选择是否需要建立唯一索引
- 索引字段是升序还是降序在单个索引的情况下不影响查询效率,但是带复合索引的条件下会有影响
- 数据量巨大并且数据库的读出操作非常频繁的时候才需要创建索引,如果写入操作非常频繁,创建索引会影响写入速度。
标签: mongodb