索引被用来快速找出在一个列上用一特定值的行。没有索引,MySQL不得不首先以第一条记录开始,然后读完整个表直到它找出相关的行。表越大,花费时间越多。如经常根据sal进行查询,并且遇到了性能瓶颈,首先查看程序是否存算法问题,再考虑对sal建立索引,建立索引如下:1、create unique index 索引名 on 表名(列名);2、alter table 表名 add unique index 索引名 (列名);注意一定不可以用select * …=all了,说明使用了索引条件中的sal使用了索引如上图:假如我们要查找sal大于1500的所有行,那么可以扫描索引,索引时排序的,结果得出7行,我们知道不会再有匹配的记录,可以退出了。这样,可以快速定位到第一个匹配的值,以节省大量搜索时间。其中,前两条语句是等价的,删除掉table_name中的索引index_name。
暂无评论