比较有索引和无索引的查询速度(在mysql数据库中)

索引:

      定义:在关系数据库中,索引是一种单独的、物理的对数据库表中一列或多列的值进行排序的一种存储结构,它是某个表中一列或若干列值的集合和                  相应的指向表中物理标识这些值的数据页的逻辑指针清单。索引的作用相当于图书的目录,可以根据目录中的页码快速找到所需的内容。

      总的来说索引就是为了提高查询的速度

       mysql数据库中可以添加索引,其中的主键是自带索引的,但是在使用有索引的列进行查询的时候才会提高速度。

       mysql数据库中的索引算法有HASH 和BTREE。其中HASH索引适合等值查找,不适合范围;BTREE索引适合范围查找,并且没有hash冲突问题。

下面我们来证明索引是否真的提高了查询速度:

   现在我们mysql数据库中有一个表student,表中有两列:name,age(由于数据量太多,age不是现实生活中的年龄),该表中有15272条记录。下图是该表:


查询:(1)没有索引的时候进行查询


(2)将name设成hash索引


(3)将name设成btree索引



由上面三个结果页面的显示:我们可以看出无索引的查询速度要比有索引的查询速度慢很多。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值