mysql sum(if())和count(if())的用法说明


Posted in MySQL onJanuary 18, 2022

mysql sum(if())和count(if())的用法

SELECT SUM(if(category=1,size,0)) ,COUNT(if(category=1,true,null)) FORM t_file;

解析

sum(if(category=1,size,0))

sum函数返回一个值类型的数值,如果category=1,则返回size,如果category不等于1就返回0。

count(if(category=1,true,null))

count函数返回一个布尔值类型的数值,如果category=1,返回true,如果category不等于1返回null,如果写成count(If(category=1,1,0) 则返回的全是true,也就是说全都会计数,而count()间断内容是true还是null,如果不是null就计数,如果是null就不计数。

所以count(if())的写法应该是count(if(表达式表达式,true,null)); 

mysql 聚合函数 根据条件求和 sum(if())

SELECT
	p.Id Id,
	p.ImgUrl ImgUrl,
	p.Title Title,
	p.ReferOutPrice ReferOutPrice,
	e.`Status`,
	SUM(IF(e.`Status`=1 OR e.`Status`=2, ed.Number,0))
FROM
	Product p
	LEFT JOIN EBOrdersDetails ed ON p.id = ed.ProductId
	LEFT JOIN EBOrders e ON ed.PurchaseNo = e.PurchaseNo 
WHERE
	p.StoreId = 143 
	AND p.`Status` >-1
  GROUP BY p.Id

mysql sum(if())和count(if())的用法说明

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。

MySQL 相关文章推荐
MySQL8.0.24版本Release Note的一些改进点
Apr 22 MySQL
MySQL数据迁移相关总结
Apr 29 MySQL
MySQL 外键约束和表关系相关总结
Jun 20 MySQL
MySQL 5.7常见数据类型
Jul 15 MySQL
一文带你探究MySQL中的NULL
Nov 11 MySQL
Mysql Innodb存储引擎之索引与算法
Feb 15 MySQL
Mysql如何实现不存在则插入,存在则更新
Mar 25 MySQL
mysql的Buffer Pool存储及原理
Apr 02 MySQL
mysql如何查询连续记录
May 11 MySQL
MySQL数据库之内置函数和自定义函数 function
Jun 16 MySQL
MySQL外键约束(Foreign Key)案例详解
Jun 28 MySQL
MySQL自定义函数及触发器
Aug 05 MySQL
SQL语法CONSTRAINT约束操作详情
Jan 18 #MySQL
MySQL笔记 —SQL运算符
Jan 18 #MySQL
Mysql中一千万条数据怎么快速查询
Dec 06 #MySQL
Mysql中有关Datetime和Timestamp的使用总结
Dec 06 #MySQL
详解MySQL中timestamp和datetime时区问题导致做DTS遇到的坑
Dec 06 #MySQL
mysql中整数数据类型tinyint详解
Dec 06 #MySQL
SQL注入详解及防范方法
Dec 06 #MySQL
You might like
php数组查找函数总结
2014/11/18 PHP
PHP处理Ajax请求与Ajax跨域问题
2017/02/13 PHP
Laravel 简单实现Ajax滚动加载示例
2019/10/22 PHP
js实现iframe动态调整高度的代码
2008/01/06 Javascript
一些不错的js函数ajax
2008/08/20 Javascript
javascript 表单的友好用户体现
2009/01/07 Javascript
基于jquery.Jcrop的头像编辑器
2010/03/01 Javascript
jquery网页元素拖拽插件效果及实现
2013/08/05 Javascript
改变隐藏的input中value的值代码
2013/12/30 Javascript
javascript数组操作(创建、元素删除、数组的拷贝)
2014/04/07 Javascript
jQuery 1.9移除了$.browser可以使用$.support来替代
2014/09/03 Javascript
vue绑定设置属性的多种方式(5)
2017/08/16 Javascript
JavaScript体验异步更好的解决办法
2018/01/08 Javascript
vue axios 表单提交上传图片的实例
2018/03/16 Javascript
微信小程序实现折叠展开效果
2018/07/19 Javascript
JavaScript+HTML5 canvas实现放大镜效果完整示例
2019/05/15 Javascript
JavaScript如何操作css
2020/10/24 Javascript
[00:44]TI7不朽珍藏III——军团指挥官不朽展示
2017/07/15 DOTA
Python linecache.getline()读取文件中特定一行的脚本
2008/09/06 Python
Python语言编写电脑时间自动同步小工具
2013/03/08 Python
使用Pyinstaller的最新踩坑实战记录
2017/11/08 Python
Python实现的拟合二元一次函数功能示例【基于scipy模块】
2018/05/15 Python
Tensorflow 实现修改张量特定元素的值方法
2018/07/30 Python
python爬虫之自动登录与验证码识别
2020/06/15 Python
python3 enum模块的应用实例详解
2019/08/12 Python
解决pandas展示数据输出时列名不能对齐的问题
2019/11/18 Python
Python通过文本和图片生成词云图
2020/05/21 Python
连卡佛中国官网:Lane Crawford中文站
2018/01/27 全球购物
Myprotein芬兰官网:欧洲第一运动营养品牌
2019/05/05 全球购物
益模软件Java笔试题
2012/03/27 面试题
高中校园广播稿
2014/10/21 职场文书
学校法制宣传日活动总结
2014/11/01 职场文书
财政局个人年终总结
2015/03/03 职场文书
MySQL Shell的介绍以及安装
2021/04/24 MySQL
解决SpringBoot文件上传临时目录找不到的问题
2021/07/01 Java/Android
仅仅使用 HTML/CSS 实现各类进度条的方式汇总
2021/11/11 HTML / CSS