简单说一下MySQL sum(1) count(1) 区别和联系

简单说一下MySQL sum(1) count(1) 区别和联系

有人说sum(1) 相当于 count(1) ,其实还是有一点点差别;

1. 首先说一下使用过程中注意的点

sum(1)  count(1) 使用过程中都有可能返回值为NULL,并不是统计不到就返回值为0

以下数据表实例

<span>简单说一下MySQL sum(1) count(1) 区别和联系</span>

 <1> 对于sum(1),如果带 where 条件查不到数据,则返回Null

SELECT sum(1) FROM tickets WHERE `order` > 10000 

  <span>简单说一下MySQL sum(1) count(1) 区别和联系</span>

  <2> 对于 count(1) ,如果带 where 且 group by  操作, where条件下无数据,也会返回NUll 

SELECT count(1) FROM tickets WHERE `order` > 10000   GROUP BY priority

  <span>简单说一下MySQL sum(1) count(1) 区别和联系</span>

 都可以用 IFNULL(count(1),0)  优化处理

2.具体说一下 sum(1) count(1)  统计数据上面的差别

<span>简单说一下MySQL sum(1) count(1) 区别和联系</span>

 

 

 

SELECT sum(if(t.`order`=666,1,0)) as sum ,
count(if(t.`order`=666,1,0)) as count,
count(1),
count(0),
sum(1),
sum(0)
FROM tickets t
GROUP BY priority

<span>简单说一下MySQL sum(1) count(1) 区别和联系</span>

   可以看到,count() 其中请携带的if条件没有起作用,在分组后,count(1)  count(0)  统计的都是所有条数, sum可根据 0 1 起到 if()  我们想要的统计效果

 

多多实践总结~

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/2566.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • mysql varbinary类型_mysql中varbinary、binary、char、varchar异同

    mysql varbinary类型_mysql中varbinary、binary、char、varchar异同binary 与 varbinary 类型和 char 与 varchar 类型是相似的 只是他们存储的是二进制数据 也就是说他们是包含字节流而不是字符流 他们有二进制字符的集合和顺序 他们的对比 排序是基于字节的数值进行的 binary 与 varbinary 的最大长度和 char 与 varchar 是一样的 只不过他们是定义字节长度 而 char 和 varchar 对应的是字符长度 存储和取出时对尾部空格的处理 char

    2025年7月3日
    5
  • Springboot上传excel并将表格数据导入或更新mySql数据库[通俗易懂]

    Springboot上传excel并将表格数据导入或更新mySql数据库[通俗易懂]本文主要描述,Springboot-mybatis框架下上传excel,并将之导入mysql数据库的过程,如果用户id已存在,则进行更新修改数据库中该项信息,由于用到的是前后端分离技术,这里记录的主要是后端java部分,通过与前端接口进行对接实现功能1.在pom.xml文件中导入注解,主要利用POI<dependency><groupId>org.a…

    2022年6月28日
    29
  • 最短路径算法–无向图[通俗易懂]

    最短路径算法–无向图[通俗易懂]最短路径算法Dijkstra算法是最短路径算法中为人熟知的一种,是单起点全路径算法。该算法被称为是“贪心算法”的成功典范。1、表示图的数据结构邻接列表邻接列表:在邻接列表实现中,每一个顶点会存储一个从它这里开始的边的列表。比如,如果顶点A有一条边到B、C和D,那么A的列表中会有3条边邻接…

    2022年5月24日
    41
  • ider 2022激活码(JetBrains全家桶)「建议收藏」

    (ider 2022激活码)JetBrains旗下有多款编译器工具(如:IntelliJ、WebStorm、PyCharm等)在各编程领域几乎都占据了垄断地位。建立在开源IntelliJ平台之上,过去15年以来,JetBrains一直在不断发展和完善这个平台。这个平台可以针对您的开发工作流进行微调并且能够提供…

    2022年4月2日
    914
  • Linux2021.5.5激活码(最新序列号破解)

    Linux2021.5.5激活码(最新序列号破解),https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月18日
    700
  • CSS导航条制作心得

    CSS导航条制作心得今天学习了导航条的制作,感觉收获很大!学习了一段时间的css和html。之前都是在慕课网上面看视频学习的,感觉收获不是特别大,有一点慢,效率不高。学东西还是得边做边学变想,学习编程最好能够不断地实践,毕竟实践出真知。学习了这个作者的文章http://www.missyuan.com/thread-438839-1-1.html    1.导航条放于div容器中——-ui和li来写

    2022年7月22日
    18

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号