Mysql是比力风行的关系型数据库,出格在web网站方面用得比力多。sql语句查询数据库效率的凹凸,直接影响到网站的拜候速度,下面介绍Mysql中sql语句的几种优化方式。
查询数据库的数据尽量利用索引来查询。例如,一张user用户数据表的id字段为索引,name为用户名字段(非索引字段),当查询某条数据时,直接用id查询比用name查询效率会高良多。
从数据库中查询数据,sql语句尽量避免利用or来毗连前提查询数据。因为利用or会导致执行sql的时辰进行全表查询,而不是利用索引查询。例如,SQL语句select id from user where name='a' or name='b',可以改为以下的形式来提高查询的效率:
在持续数值的查询中,能利用between的环境下,尽量利用between,而不利用in。in和not in城市导致全表查询。
sql语句的where查询前提,对字段进行表达式操作,会导致mysql引擎抛却利用索引而进行全表扫描查询。
sql语句的where查询前提,对字段进行函数操作,也会导致mysql引擎抛却利用索引而进行全表扫描查询。例如,下面语句查询name字段以abc开首的id,可以更改写法,提高查询的效率。
多张数据表查询数据,利用inner join,left/right join来取代子查询,可以提高查询的效率。
在利用like进行数据表的查询时,能用单%的环境下,不建议利用双%,双%查询会导致mysql引擎抛却利用索引而进行全表扫描查询。
0 篇文章
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!