【数据库】count(*),count(1)和count(列)

【数据库】count(*),count(1)和count(列)【数据库】count(*),count(1)和count(列)

大家好,又见面了,我是你们的朋友全栈君。

   最近写了一些SQL,在用count进行统计的时候,我一般都习惯用count(*),看同事的代码有事会用count(1),那么count(*),count(1)和count(某一列)有什么区别呢?

   首先从查询结果来看:

count(*)和count(1)统计的是整张表的所有行。

count(列):如果统计的列不允许为null,则统计的也是所有行,当这一列有null值时,count将忽略null的行。

        接着从查询效率上来看:

        网上说法不一,后来请教了公司的DBA,DBA是这么说的:这个具体得看表,结果一样 数据量不大的话,没什么区别,如果数据量大并有主键,count(1)会好一点。

        于是在自己的数据库里进行测试:

1.4000+数据,查询时间一样,都是0.003 sec

2.14W+数据,count(1): 0.078 sec

                        count(*): 0.059 sec

                        count(id): 0.067 sec

         从结果上来看,是count(*)比较快。(查询结果是在id是主键,并且是索引的前提下产生的)

         以上是我对他们三个的一点点认识,感觉还不是很全面,大家还有什么看法,欢迎讨论。

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

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

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


相关推荐

  • USB协议分析仪

    USB协议分析仪USB协议分析仪

    2022年6月22日
    82
  • Coreseek:部门查询和增量索引代替实时索引

    Coreseek:部门查询和增量索引代替实时索引

    2021年12月31日
    48
  • Java获取客户端IP[通俗易懂]

    转载地址:Java获取客户端IP 在开发工作中,我们常常需要获取客户端的IP。一般获取客户端的IP地址的方法是:request.getRemoteAddr();但是在通过了Apache,Squid等反向代理软件就不能获取到客户端的真实IP地址了。原因:由于在客户端和服务之间增加了中间代理,因此服务器无法直接拿到客户端的IP,服务器端应用也无法直接通过转发请求的地址返回给客户端。现在图示代理上网和I

    2022年2月25日
    38
  • 重定向与转发的区别_响应重定向和请求转发的区别

    重定向与转发的区别_响应重定向和请求转发的区别重定向和转发的区别: 重定向和转发的区别就是请求服务器几次, 如果请求服务器地址没有变说明这是一次请求请求在自己的服务器里面流转这就是转发这是服务器行为。 如果请求服务器地址变了,说明这是请求了二次,第二次请求由客户端流浪器负责,在多台服务器之间流转这就是客户端行为。 重定向: 1、重定向的速度比较慢,需要跨越服务器 2、重定向是两次不同的请求 3、重定向是执行重定向之后的代码 4、地址栏的地址是会发生变化的 5、重定向不包含项目的根目录 6、重定向是会就是.

    2025年10月6日
    4
  • 秒懂JSONArray和JSONObject的区别和使用

    秒懂JSONArray和JSONObject的区别和使用一.JSONObject是什么?就是对象json;之前在秒懂json中说过,{}表示对象,所以JSONObject就是:{"name":"tom"}同时,这里的对象Json通过添加数组json可以变成对象数组json:{"name":["tome","kate"]}例如:JSONObjectjsono=newJSONObject();JSONArray jsona=…

    2022年6月7日
    36
  • java文件服务器搭建(如何搭建服务器)

    一.服务器的购买1.我选择的是阿里云的服务器,学生价9.5元一个月,百度直接搜索阿里云,然后点击右上角登录,推荐大家用支付宝扫码登录,方便快捷。阿里云官网的东西比较多,登录后我找了很久也没有找到学生服务器在哪里卖,最后在咨询里找到了这个网址,https://promotion.aliyun.com/ntms/campus2017.html,购买的时候需要进行学生认证,按照他的要求一步步…

    2022年4月18日
    53

发表回复

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

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