在这一节中我们讲讲在mongo中如何创建索引
得到当前查询的索引信息
db.user.find(_id:12).explain();
cursor: basicCoursor 指的是没有索引
nscannedObjects:100 理论上要扫描多少行
添加索引是影响修改和添加的速度
给一个字段添加索引 1代表正序 -1代表反序
db.stu.ensureIndex({name:1});
给多个字段创建索引
db.stu.ensureIndex({name:1,sex:-1});
稀疏索引:和普通的索引对比对于当没有name这个列存在时,普通索引把name当null查询,稀疏索引把最后一行去掉不查询
db.stu.ensureIndex({name:1},{sparse:true})
hash索引
db.stu.ensureIndex({name:'hashed'});
给文档创建索引
db.stu.ensureIndex({'og.sex':1});
得到表中所有的索引信息
db.stu.getIndexs()
删除一列的索引
db.stu.dropIndex({name:1});
db.stu.dropIndexes() 删除所有的索引
db.collection.reIndex() 重建所有的索引