MongoDB索引

索引的目的是为了提高查询速度

1.创建索引

创建索引

db.user.ensureIndex({name:1})//为属性name创建索引

创建唯一索引(如果name有重复的会创建失败)

db.user.ensureIndex({name:1},{unique:1})

查看所有索引

db.user.getIndexes()

查看索引相关情况

db.user.stats()

查看某查询使用索引的情况

db.user.find().explain()

2.使用索引的查询

如何计算查询时间?
这里先设置开启 Profiling 功能
Profilling共三个级别
0为不开启
1为记录慢命令(>100ms)
2为记录所有命令
设置Profilling级别

db.setProfillingLevel(2)//设

查看Profilling级别

db.getProfillingLevel()

查询

db.system.profile.find().pretty()

就会查看到有一项mills就是时间
创建索引的条件下和不创建索引条件下分别测试同一查询在数据不多的情况下差距很小,数据很多是会有很大差异

3.删除索引

删除索引

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

删除集合也会删除所有索引

db.user.drop()
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值