sql优化-使用索引

项目中使用了大量的sql,对于查询sql,如果没有使用索引会对查询速度造成很大的影响,例如如下sql

SELECT a.name,b.id FROM TableA a JOIN TableB b ON a.id = b.other_id WHERE a.name = 'test' AND b.pin = '123' AND a.state = '1'

如果没有对表TableA使用索引,那么查找方式使用的是全表扫描,当数据量过大时,这种情况下查询会非常慢,为了解决这个问题,最简单也是最难的一种方法是增加索引:
TableAIndex   name,state
TableBIndex   pin

通过建立索引,那么查找使用的是索引方式,所以会比原先快

注:这里之所以说添加索引是一种最简单也是最难的方法,因为这种方法实践后,能够明显看到效果,但索引的泛滥会导致数据库整体占用的内存增大,维护索引的成本会大于所带来的效益,切记索引不可乱用,且最好在一开始建表的时候就建立索引,不要在表中有数据再建立索引,这样可以降低索引维护的成本


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章