当前位置: 首页 > news >正文

MySQL统计函数count详解

  1. count()概述
    count() 是一个聚合函数,返回指定匹配条件的行数。开发中常用来统计表中数据,全部数据,不为null数据,或者去重数据

  2. count(1)和count()和count(列名)的区别
    1.函数说明
    count(1):统计所有的记录(包括null)。
    count(
    ):统计所有的记录(包括null)。
    count(字段):统计该"字段"不为null的记录。
    count(distinct 字段):统计该"字段"去重且不为null的记录。
    count(条件语句):统计符合某个条件的记录 (注意:Count在值是NULL时不统计数:
    count(‘任意内容’)都会统计出所有记录数,因为count只有在遇见null时不计数,即count(null)==0,因此前者单引号内不管输入什么值都会统计出所有记录数, 一般可以写为count(column = ‘xxx’ or NULL)

count(1)中的1并不是表示第一个字段,而是表示一个固定值。其实就可以想成表中有这么一个字段,这个字段就是固定值1,count(1),就是计算一共有多少个1。count(*),执行时会把星号翻译成字段的具体名字,效果也是一样的,不过多了一个翻译的动作,比固定值的方式效率稍微低一些。

2.执行效率
他们之间根据不同情况会有些许区别,MySQL 会对count()做优化。(1)如果表中只有一列,则count( )效率最优。(2)如果表有多列,且存在主键,count (主键列名)效率最优,其次是:count (1) >count( *)。(3)如果表有多列,且不存在主键,则count(1 )效率优于count( *)

3.执行过程
count(*)包括了所有的列,相当于行数,在统计结果的时候, 包括列值为NULL的行。
count(1)包括了忽略所有列,用1代表代码行,在统计结果的时候, 包括列值为NULL的行。
count(列名)只包括列名那一列,在统计结果的时候,会忽略列值为空(这里的空不是只空字符串或者0,而是表示null)的计数, 即某个字段值为NULL时,不统计。

http://www.lryc.cn/news/62082.html

相关文章:

  • 实验04:图像压缩(DP算法)
  • 4.19--面试系列之真题版本--redis出现大key怎么解决?Redis 大 Key 对持久化有什么影响?
  • 新手在家做自媒体要如何起步?
  • 易基因:禾本科植物群落的病毒组丰度/组成与人为管理/植物多样性变化的相关性 | 宏病毒组
  • 华为OD机试——对称美学(通过率只有8.51%???)
  • 【三十天精通Vue 3】第十六天 Vue 3 的虚拟 DOM 原理详解
  • Arduino ESP8266通过udp获取时间以及同步本地时间方法
  • c/c++:char*定义常量字符串,strcmp()函数,strcpy()函数,寻找指定字符,字符串去空格
  • 2023年6月DAMA-CDGA/CDGP数据治理认证考试可报名地区公布
  • UDS的0x19服务介绍
  • QinQ技术与Portal技术
  • Vue-自定义表单验证(rule,value,callback)详细使用
  • 港联证券|TMT板块全线退潮,这些个股获主力逆市抢筹
  • WPF学习
  • C#使用WebDriver模拟浏览器操作WEB页面
  • 正则表达式 - 简单模式匹配
  • 银行数字化转型导师坚鹏:银行数字化转型培训方案
  • 多维时序 | MATLAB实现BO-CNN-LSTM贝叶斯优化卷积神经网络-长短期记忆网络多变量时间序列预测
  • Shell知识点(一)
  • mysql 索引失效、联合索引失效场景和举例
  • 快速将PDF转换为图片:使用在线转换器的步骤
  • 什么是gpt一4-如何用上gpt-4
  • Docker 相关概念
  • STM32平衡小车 TB6612电机驱动学习
  • 动态加载 JS 文件
  • 14、lldb调试指令
  • 浏览器缓存策略:强缓存和协商缓存
  • 2023年Chat GPT 应用前景分析
  • 并发计算公式
  • “华为杯”研究生数学建模竞赛2020年-【华为杯】E题:能见度估计与预测(附获奖论文及python代码实现)