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 相关文章推荐
MySQL 如何分析查询性能
May 12 MySQL
MySQL中使用or、in与union all在查询命令下的效率对比
May 26 MySQL
解决Navicat for MySQL 连接 MySQL 报2005错误的问题
May 29 MySQL
MySQL索引失效的典型案例
Jun 05 MySQL
SQL实现LeetCode(180.连续的数字)
Aug 04 MySQL
MySQL8.0升级的踩坑历险记
Nov 01 MySQL
一次Mysql update sql不当引起的生产故障记录
Apr 01 MySQL
mysql使用 not int 子查询隐含陷阱
Apr 12 MySQL
MySql数据库触发器使用教程
Jun 01 MySQL
MySQL运行报错:“Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggre”解决方法
Jun 14 MySQL
关于mysql中string和number的转换问题
Jun 14 MySQL
MySQL8.0 Undo Tablespace管理详解
Jun 16 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 adodb连接不同数据库
2009/03/19 PHP
PHP大批量数据操作时临时调整内存与执行时间的方法
2011/04/20 PHP
C#使用PHP服务端的Web Service通信实例
2014/04/08 PHP
php使用Cookie实现和用户会话的方法
2015/01/21 PHP
Thinkphp微信公众号支付接口
2016/08/04 PHP
JavaScript动态调整TextArea高度的代码
2010/12/28 Javascript
Textarea根据内容自适应高度
2013/10/28 Javascript
IE8中使用javascript动态加载CSS的解决方法
2014/06/17 Javascript
javascript匿名函数实例分析
2014/11/18 Javascript
jQuery实现渐变弹出层和弹出菜单的方法
2015/02/20 Javascript
javascript相关事件的几个概念
2015/05/21 Javascript
基于jQuery通过jQuery.form.js插件实现异步上传
2015/12/13 Javascript
angular.js分页代码的实例
2016/07/27 Javascript
Vue.js事件处理器与表单控件绑定详解
2017/03/20 Javascript
javascript高仿热血传奇游戏实现代码
2018/02/22 Javascript
axios拦截设置和错误处理方法
2018/03/05 Javascript
vue-router相关基础知识及工作原理
2018/03/16 Javascript
详解PHP后期静态绑定分析与应用
2018/03/21 Javascript
微信小程序实现Session功能及无法获取session问题的解决方法
2019/05/07 Javascript
react 组件传值的三种方法
2019/06/03 Javascript
vue服务端渲染操作简单入门实例分析
2019/08/28 Javascript
VUE渲染后端返回含有script标签的html字符串示例
2019/10/28 Javascript
Python urllib、urllib2、httplib抓取网页代码实例
2015/05/09 Python
Python的Django框架中URLconf相关的一些技巧整理
2015/07/18 Python
关于python pyqt5安装失败问题的解决方法
2017/08/08 Python
python正则表达式之对号入座篇
2018/07/24 Python
python实现高斯(Gauss)迭代法的例子
2019/11/20 Python
python制作一个简单的gui 数据库查询界面
2020/11/19 Python
HTML5离线应用与客户端存储的实现
2018/05/03 HTML / CSS
菲律宾购物网站:Lazada菲律宾
2018/04/05 全球购物
Ray-Ban雷朋瑞典官方网站:全球领先的太阳眼镜品牌
2019/08/22 全球购物
毕业生求职找工作的自我评价范文
2013/11/27 职场文书
临床专业自荐信
2014/06/22 职场文书
原料仓仓管员岗位职责
2014/07/08 职场文书
2015元旦晚会主持人开场白+结束语
2014/12/14 职场文书
Java面试题冲刺第十七天--基础篇3
2021/08/07 面试题