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

 更新时间:2022年01月15日 11:41:03   作者:cindyCode  
这篇文章主要介绍了mysql sum(if())和count(if())的用法说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

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

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 关于@NotNull注解失效的原因之一

    关于@NotNull注解失效的原因之一

    这篇文章主要介绍了关于@NotNull注解失效的原因之一,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-01-01
  • 一文弄懂MySQL索引创建原则

    一文弄懂MySQL索引创建原则

    在关键字段的索引上建与不建索引,查询速度相差近100倍,但差的索引和没有索引效果一样,索引并非越多越好,因为维护索引需要成本,下面这篇文章主要给大家介绍了关于MySQL索引创建原则的相关资料,需要的朋友可以参考下
    2022-02-02
  • mysql 循环insert方式

    mysql 循环insert方式

    这篇文章主要介绍了mysql 循环insert方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-08-08
  • MySQL的常用命令集锦

    MySQL的常用命令集锦

    这篇文章主要介绍了MySQL的常用命令集锦,堪称初学者需要掌握的MySQL命令大全,其中系统命令行环境是基于类Unix系统来作例子的,需要的朋友可以参考下
    2015-11-11
  • MySQL错误“Specified key was too long; max key length is 1000 bytes”的解决办法

    MySQL错误“Specified key was too long; max key length is 1000 b

    今天在为数据库中的某两个字段设置unique索引的时候,出现了Specified key was too long; max key length is 1000 bytes错误
    2010-08-08
  • mysql利用init-connect增加访问审计功能的实现

    mysql利用init-connect增加访问审计功能的实现

    下面小编就为大家带来一篇mysql利用init-connect增加访问审计功能的实现。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-03-03
  • mysql5.7安装及配置教程

    mysql5.7安装及配置教程

    这篇文章主要为大家详细介绍了mysql5.7安装及配置教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-11-11
  • 浅谈MySql update会锁定哪些范围的数据

    浅谈MySql update会锁定哪些范围的数据

    本文主要介绍了记录一下MySql update会锁定哪些范围的数据,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-06-06
  • 简述MySQL 正则表达式

    简述MySQL 正则表达式

    大家都知道MySQL可以通过 LIKE ...% 来进行模糊匹配,MySQL 同样也支持其他正则表达式的匹配, MySQL中使用 REGEXP 操作符来进行正则表达式匹配。对mysql正则表达式知识感兴趣的朋友一起看看吧
    2016-11-11
  • ubuntu linux下使用Qt连接MySQL数据库的方法

    ubuntu linux下使用Qt连接MySQL数据库的方法

    Linux下完整的MySQL开发需要安装服务器端,如果安装客户端也没什么不好。直接在软件中心搜mysql,把client和server选上。
    2011-08-08

最新评论