创建索引
索引:以提升查询速度
测试:插入10万条数据到数据库中
for(i=0;i<100000;i++){db.t12.insert({name:'test'+i,age:i})}
db.t1.find({name:'test10000'})
#寻找test10000
db.t1.find({name:'test10000'}).explain('executionStats')
#查看插入所花费的时间
建立索引之后对比:
语法:db.集合.ensureIndex({属性:1}),1表示升序, -1表示降序
具体操作:
db.t255.ensureIndex({name:1})
#创建了一个索引了
db.t1.find({name:'test10000'}).explain('executionStats')
索引只需要0毫秒
索引
在默认情况下创建的索引均不是唯一索引。
创建唯一索引:
db.t1.ensureIndex({"name":1},{"unique":true})
创建唯一索引并消除重复:
db.t1.ensureIndex({"name":1},{"unique":true,"dropDups":true})
建立联合索引(什么时候需要联合索引):
db.t1.ensureIndex({name:1,age:1})
通过多个字段来判断它的唯一性
查看当前集合的所有索引:
db.t1.getIndexes()
删除索引:
db.t1.dropIndex('索引名称')
nIndexesWas:曾经有2个
OK:现在就只有一个了