count() 优化

Posted longqin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了count() 优化相关的知识,希望对你有一定的参考价值。

误区:

1、 mysiam的count()非常快

  答:是比较快,但仅限于查询表的“所有行”比较快,因为Mysiam对行数进行了存储,一旦有条件的查询,速度就不再快了,尤其是where条件的列上没有索引

 

2、假如 id<100的商家都是我们内部测试的,我们想查查真实的商家有多少?

  select count(*) from lx_com where id>=100; (1000多万行用了6.X秒)

  小技巧:

    select count(*) from lx_com;快

    select count(*) from lx_com where id<100;快

    select count(*) from lx_com - select count(*) from lx_com where id < 100; 快

    select (select count(*) from lx_com) - (select count(*) from lx_com where id<100)

 

以上是关于count() 优化的主要内容,如果未能解决你的问题,请参考以下文章

MySQL count(*) 性能优化

Mysql优化

MySql查询优化方法总结

MYSQL性能调优06_分页查询优化JOIN关联查询优化in和exsits优化count(*)查询优化

Mysql(18)—count(*)count 和count(字段)的区别以及count()查询优化手段

SQL优化指南