【SQL】COUNT()函数 用法详解

COUNT()函数

COUNT函数用法:COUNT ( [ALL | DISTINCT] column | expression | *)

  1. ALL关键字指示统计所有值,而DISTINCT关键字强制函数仅对不同的值进行操作。 默认情况下,使用ALL选项。
  2. 条件表达式
    • COUNT()函数中条件表达式加 OR null。例如,SELECT COUNT(number > 200 OR null) FROM vf;
    • COUNT()函数中条件表达式使用 if。例如,SELECT COUNT(if(number > 200, 1, null)) FROM vf;
    • COUNT()函数中条件表达式使用 case when。例如,SELECT COUNT(case when number > 200 then 1 end) FROM vf;

解析:sql 语句中count()有条件的时候为什么要加上or null?

例如count(sex= ‘男生’ or NULL) ,为什么要加上or NULL,直接count(sex=‘男生’)有什么问题吗?不就是要找sex= '男生’的数据吗,为什么要计算NULL的数据。

答案: 因为当 sex不是男生时 sex=‘男生’ 结果false。不是 NULL, count在值是NULL是不统计数,(count(‘任意内容’)都会统计出所有记录数,因为count只有在遇见null时不计数,即count(null)==0,因此前者单引号内不管输入什么值都会统计出所有记录数),至于加上or NULL , 很像其他编程里的or运算符,第一个表达式是true就是不执行or后面的表达式,第一个表达式是false 执行or后面的表达式 。当sex不为男生时,sex= ‘男生’ or NULL 的结果是NULL,Count才不会统计上这条记录数

记录自己的错误:

语句:
Right:select (select count(user_id) from Users)
Error:select count(select user_id from Users)
错误示例:count()里边不能加查询语句啊!!!

-- select contest_id, round(count(*)/count(select Users.user_id from Users)*100, 2) as percentage 

参考文献:
sql—count() 中加表达式计数
count加表达式,Mysql中Count函数的正确使用!
SQL聚合函数
数据库的高级查询二:聚合函数(SUM、MAX,MIN,AVG,COUNT)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/784834.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

深度学习 Lecture 6 学习曲线、高偏差和高方差的调整和误差分析过程

一、学习曲线(Learning curves) 用处:帮助了解学习算法性能如何的方式 曲线随着经验的数量(算法所拥有的训练样本)发生的变化 PS: 随着训练样本的增大,交叉验证误差会越来越小,趋于平稳;而训…

机器学习之决策树桩或决策残端(Decision Stump)

简介 决策树是一种常见的机器学习模型,它由一个树状结构组成,每个节点代表一个特征属性的决策规则,而每个叶子节点代表一个类别标签或者是一个数值输出。决策树的每个节点都会根据一个特征属性进行划分,直到达到某个停止条件为止,例如节点中的样本数量小于某个阈值,或者…

在rv1126上实现数字识别

有个项目,需要用到识别数字。 使用rv1126,实现数字的识别,如下图。 效果上还是存在有些问题,但还是比较好的。 1.采用的数据集少 2.数据分布不一。0,1两个数据集内容多,5,6,7&am…

webpack搭建开发环境

webpack搭建开发环境 一.webpack开发模式二.webpack打包模式三.webpack打包模式应用四.Webpack 前端注入环境变量五.Webpack 开发环境调错 source map六. Webpack 设置解析别名路径七.优化-CDN的使用八.多页面打包九.优化-分割公共代码一.webpack开发模式 作用:启动 Web 服务…

健身房预约管理系统(源码+文档)

健身房预约管理系统(小程序、ios、安卓都可部署) 文件包含内容程序简要说明含有功能:项目截图客户端首页我的预约登录教练预约时间我的注册页个人资料课程预约课程预约 管理端订单管理团课管理教练管理分类管理用户管理 文件包含内容 1、搭建…

Vue3性能优化之自定义指令实现图片懒加载

图片懒加载是一种常见性能优化的方式,进入网址时不全部加载图片 当用户进入图片可视区域时加载 不仅大大减少了服务器的压力 也可以时首屏时间变短 图片懒加载的实现原理:在图片没进入可视区域的时候,只需要让 img 标签的 src 属性指向一张…

【5G 接口协议】CU与DU之间的F1协议介绍

博主未授权任何人或组织机构转载博主任何原创文章,感谢各位对原创的支持! 博主链接 本人就职于国际知名终端厂商,负责modem芯片研发。 在5G早期负责终端数据业务层、核心网相关的开发工作,目前牵头6G算力网络技术标准研究。 博客…

从词表到RLHF一镜到底训练一个大模型

第6章 如何训练大语言模型 本章节主要探讨训练大语言模型的步骤和方法论。 目前,可能大家接触的最多的模型训练方式是微调,也能收到一定程度的比较好的效果,其中有代表性的项目有Github上的Alpaca, Baize,Vicuna等。 6.1 Pretrain 预训练 有了微调,为什么还需要预训练,直…

第116讲:使用Mycat-eye管理Mycat数据库服务

文章目录 1.Mycat的管理工具2.Mycat-eye介绍3.部署Mycat-eye3.1.安装Zookeep3.2.安装Mycat-eye3.3.访问Mycat-eye 4.在Mycat-eye中导入Mycat服务的信息 1.Mycat的管理工具 Mycat默认开通2个端口,可以在server.xml中进行修改。 8066 数据访问端口,即进行…

管易云和金蝶云星空单据接口对接

管易云和金蝶云星空单据接口对接 接入系统:金蝶云星空 金蝶K/3Cloud结合当今先进管理理论和数十万家国内客户最佳应用实践,面向事业部制、多地点、多工厂等运营协同与管控型企业及集团公司,提供一个通用的ERP服务平台。K/3Cloud支持的协同应用…

8.4 循环神经网络

小结 对隐状态使用循环计算的神经网络称为循环神经网络(RNN)。 循环神经网络的隐状态可以捕获直到当前时间步序列的历史信息。 循环神经网络模型的参数数量不会随着时间步的增加而增加。 我们可以使用循环神经网络创建字符级语言模型。 我们可以使用…

条形图、柱状图的绘制方法

【题目描述】 用*号输出柱状图。第一行输入一个整数n表示数据个数,第二行输入n个整数,用空格隔开。n和输入的数都不超过20。 【样例输入】 7 5 1 1 8 1 1 5 【样例输出】 1.条形图(水平柱状图) 样例中的柱状图属…

Generative AI 新世界 | 扩散模型原理的代码实践之采样篇

前言 本期文章,我们一起来探究生成式 AI 这一火热的新知识领域。 目前计划有三个大方向: 代码深度实践方向。例如用代码完整诠释 Diffusion 模型的工作原理,或者 Transformer 的完整架构等; 模型部署和训练优化方向。例如尝试解…

【LeetCode热题100】【数组】最大子数组和

题目链接:53. 最大子数组和 - 力扣(LeetCode) 只要和的值不要哪个子数组,原问题的解由子问题的解组成,可以用动态规划,数组中每个元素都是一个子数组的结尾,dp[i]是以num[i]为结尾的最大子数组…

Linux实战笔记(六) SSH

大家好,我是半虹,这篇文章我们介绍一下 SSH 1、简介 SSH 全称 Secure Shell,本质上是建立在应用层之上的网络传输协议 通过加密和认证机制保证传输安全,经常用于远程登录或者远程访问 除此之外,SSH 也能完成端口转发…

C++进阶篇10---特殊类设计

一、设计一个类,不能被拷贝 有人可能会觉得,这不是很简单吗,直接把拷贝构造ban掉,不就行了,但事实真的如此吗? class A { public:A(){}A(const A& tmp) delete;// ... };int main() {A a;// A b a;…

Spring Boot集成itext实现html生成PDF功能

1.itext介绍 iText是著名的开放源码的站点sourceforge一个项目,是用于生成PDF文档的一个java类库。通过iText不仅可以生成PDF或rtf的文档,而且可以将XML、Html文件转化为PDF文件 iText 的特点 以下是 iText 库的显着特点 − Interactive − iText 为你提供类(API)来生成…

2.从hello world开始【go】

当然,我们可以从最基本的Hello World程序开始。Hello World程序通常是学习一门新编程语言的第一步,因为它能够帮助你理解基础的程序结构和编译过程 下面是一个Go语言的Hello World程序示例: package mainimport "fmt"func main()…

Leetcode 3101. Count Alternating Subarrays

Leetcode 3101. Count Alternating Subarrays 1. 解题思路2. 代码实现 题目链接:3101. Count Alternating Subarrays 1. 解题思路 这一题我们只需要用贪婪算法对原数组进行切分,使得每一段都是最大的交错子序列,然后,我们要获得…

关于Ansible的模块②

转载说明:如果您喜欢这篇文章并打算转载它,请私信作者取得授权。感谢您喜爱本文,请文明转载,谢谢。 接《关于Ansible的模块 ①-CSDN博客》,继续学习和梳理Ansible的常用文件类模块 1. copy模块 从当前机器上复制文件到…