MYSQL中SUM (IF())】的更多相关文章

1.sum与if结合使用 如图:数据表中,count_money 字段可为正,可为负.为正表示收入,负表示支出. 统计总收入,总支出. select sum(if(count_money > 0, count_money, 0)) as sum_receipt, sum(if(count_money<0, count_money, 0)) as sum_paid from tableName; 得到sum_receipt为总收入,sum_paid为总支出. mysql 中if的用法: if(e…
先来一个简单的sum select sum(qty) as total_qty from inventory_product group by product_id 这样就会统计出所有product的qty. 但是很不幸,我们的系统里面居然有qty为负值.而我只想统计那些正值的qty,加上if function就可以了. SQL为: select sum(if(qty > 0, qty, 0)) as total_qty from inventory_product group by produ…
今天一个朋友突然给我发过来一个sql语句,一下子问住我了. 我想,这种语法木有见过呀.我就查了查,才明白什么意思,原来是mysql里面的用法. SUM(IF(`hosts`.state = 0, 1, 0)) AS hostNomal  ,这个语句,当hosts.state的值为0时,和加1,不为0时,和加0.类似与程序里的三元表达式.…
COUNT:是对记录进行汇总,即计数 SUM:是对符合条件的数值列字段进行求和 原表数据如下: 1,当在where子句中使用Price>25时, COUNT函数返回的是符合条件的记录,SUM函数则是将符合条件的字段中的值相加,因为id, price都是数值型,可以相加 2,在COUNT函数和SUM函数内部设置筛选条件,返回结果如下 针对上图中的结果进行分析: 第二列是每个Price与25对比后的判断结果,小于25,判断为False,用数字0表示:大于25,判断为True,用数字1表示: 可以发现…
原表: id    fenlei     time 1      分类1      20130316 2      分类2      20130316 3      分类3      20130317 4      分类2      20130317 5      分类3      20130318 需要查上表,得到结果插入新表 新表结构: id     fenlei_1   fenlei_2   fenlei_3   date 1      1             1          0…
count COUNT()函数里面的参数是列名的的时候,那么会计算有值项的次数.(NULL 不计入, 但是''值计入) COUNT(*)可以计算出行数,包括null COUNT(1)也可以计算出行数,1在这里代表一行 COUNT(column)对特定的列的值具有的行数进行计算,不包含NULL值 COUNT(条件表达式),不管记录是否满足条件表达式,只要非NULL就加1 ,所以一般都count(id=1 or null) sum sum()参数是列名的时候,计算列名的值的相加,不是统计有值项的总数…
Mysql中的count()与sum()区别   首先创建个表说明问题 CREATE TABLE `result` (   `name` varchar(20) default NULL,   `subject` varchar(20) default NULL,   `score` tinyint(4) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8   插入一些数据, insert into result values ('张三','数学'…
在我们使用数据库的时候,可能会遇到需要进行统计的情况. 比如需要统计一下,下表中各个年份的胜负场数. 遇到这样的情况,我们应该怎么办呢? 在mysql中我们可以使用group by sum  case when 来解决这个问题,sql语句如下: select date_year,sum(case when win_lose = '胜' then 1 else 0 end) win,sum(case when win_lose = '负' then 1 else 0 end) losefrom s…
MySQL 存储过程是从 MySQL 5.0 开始增加的新功能.存储过程的优点有一箩筐.不过最主要的还是执行效率和SQL 代码封装.特别是 SQL 代码封装功能,如果没有存储过程,在外部程序访问数据库时(例如 PHP),要组织很多 SQL 语句.特别是业务逻辑复杂的时候,一大堆的 SQL 和条件夹杂在 PHP 代码中,让人不寒而栗.现在有了 MySQL 存储过程,业务逻辑可以封装存储过程中,这样不仅容易维护,而且执行效率也高. 第一部分:创建一个简单的无参的存储过程 1 用mysql客户端登入…
MySQL中的两种临时表 伯乐在线2016-07-06 05:16:52阅读(4556)评论(3) 声明:本文由入驻搜狐公众平台的作者撰写,除搜狐官方账号外,观点仅代表作者本人,不代表搜狐立场.举报 外部临时表 通过CREATE TEMPORARY TABLE 创建的临时表,这种临时表称为外部临时表.这种临时表只对当前用户可见,当前会话结束的时候,该临时表会自动关闭.这种临时表的命名与非临时表可以同名(同名后非临时表将对当前会话不可见,直到临时表被删除). 内部临时表 内部临时表是一种特殊轻量级…