优化
liujihaozhy
学而不思则惘,思而不学则殆
展开
-
mysql 查询优化
原文:http://www.jb51.net/article/39221.htm 1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2.应尽量避免在 where 子句中使用!=或 3.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id fro转载 2016-03-14 18:12:43 · 246 阅读 · 0 评论 -
【MySQL】性能优化之 覆盖索引
原文:http://blog.itpub.net/22664653/viewspace-774667/ 一个包含查询所需的字段的索引称为 covering index 覆盖索引。MySQL只需要通过索引就可以返回查询所需要的数据,而不必在查到索引之后进行回表操作,减少IO,提供效率。 当你对一个sql 使用explain statement 查看一个sql的执行计划时,在EXPLA转载 2016-03-24 16:26:37 · 267 阅读 · 0 评论 -
记一次sql优化过程
在一个列表中,用到分页,就用到统计数据,列表不允许重复数据出现,就得用到group by,开始的sql大概是这样的: 很明显,在子查询的时候,生成了一个临时表,当数据量多的情况,慢查就不可避免了。所以,优化在所难免~ 其实这是最简单的情况,在列表中还存在搜索条件,有针对对table1的,有针对table2。存在left join 就要尽量降低笛卡尔积,优化之后并带有查询条件的情况,有如原创 2016-11-23 22:45:02 · 559 阅读 · 0 评论 -
php array_push array_unique使用
某一天,操作了一个数组,成员有20000多(含有重复数据),在对数组成员根据某特定条件分组的过程,大概的逻辑是这样的: if (!is_array()) { array_push(); } 导致耗时有点长,后来优化成以下逻辑: array_push(); array_unique(); 先全部压入,然后再去重,性能得到了大幅提升。 is_array()过程耗费了太多性能了原创 2017-08-02 10:58:04 · 1950 阅读 · 0 评论