性能优化之MySQL优化(三)- count()和max()查询优化

一、max()查询优化


        rows一行的值为16451说明需要查询16451行才能找到,当数据量很大的时候查询起来会很耗时,此时我们可以在payment_date列建立索引


        这里最后加了个\G   能使输出按列打印

        此时直接就可以找到了,大大减少了查询时间,所以当使用max()函数时我们可以考虑使用索引


二、count()查询优化

         首先区分count(*)、count(列名:如id)、count(1)(count(*)、count(id)、count(1)

用count(*)  好呢 还是count(id)好, 还是count(1)好? 这两种的选择有时候执行结果是不一样的。
例如:
mysql>create table t(id int);
mysql>insert into t(id) values(1);
mysql>insert into t(id) values(2);
mysql>insert into t(id) values(null);
mysql>select * from t;
+------------+
|   id       |
+------------+
|    1       |
|    2       |
|    NULL|
mysql>select count(*),count(1),count(id) from t;

结果:count(*)=3条   ;  count(1)=3条  count(id)=2条

因为count(*) ,count(1)包括null值,count(id)忽略null值




  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值