mysql 带条件的sum/count 使用技巧

本测试只是简单测试,其用途不在于代替count函数配合where函数进行聚合计算,而是在复杂查询中在sum/count中加入条件,一次性求出不同条件下的聚合结果。

1、插入测试数据如图

2、sum计算(type=1)个数

或者使用中间加入if判断

3、到这里你一定会异想天开的以为count是不是也可以加条件,同样的方法在count中并不适用

加上if判断也不行

4、使用count加条件的方法可以使用以下方式

原文地址:https://www.cnblogs.com/yuanyuanyuan/p/8143080.html

时间: 2024-10-09 19:05:59

mysql 带条件的sum/count 使用技巧的相关文章

mysql带条件取count记录数

参考方法三: 统计sub_type='REFUND_FEE' 的记录数: 方法一.select count(sub_type) from t where t.sub_type='REFUND_FEE': 方法二.select sum(if( B.sub_type='REFUND_FEE' ,1,0)) from t: 方法三.select count(B.sub_type='REFUND_FEE' or null) from t: 解释: 当select B.sub_type='REFUND_F

mysql带条件查询,联表查询

---恢复内容开始--- 1,用于设定所select出来的数据是否允许出现重复行(完全相同的数据行) all:允许出现--默认不写就是All(允许的). distinct:不允许出现--就是所谓的"消除重复行" 2,where:条件 3,group by:分组依据 后面加表的字段名,通常只进行一个字段的分组 mysql表查询语法形式:select [all | distinct] 字段名或表达式 from 表名 [where] [group by] [having] [order by

MySQL SUM() COUNT()

如题MySQL SUM() COUNT() 也是在工作中碰到的 特此记录一下 SUM()返回的是列的数字和 如一个学生的总分数 eg:select sum(obj) from table 返回的肯定是table表中 obj列的数字之和 COUNT() 计算指定列的个和 如一个学生的不及格科目几科 eg:select count(*) from table 返回的肯定是table表中有多少行 null是被忽略的 sum经常和group by一起使用 count经常和distinct使用 比如下边的

提高MySQL数据库查询效率的几个技巧(转载)

[size=5][color=Red]提高MySQL数据库查询效率的几个技巧(转)[/color][/size]      MySQL由于它本身的小巧和操作的高效, 在数据库应用中越来越多的被采用.我在开发一个P2P应用的时候曾经使用MySQL来保存P2P节点,由于P2P的应用中,结点数动辄上万个,而且节点变化频繁,因此一定要保持查询和插入的高效.以下是我在使用过程中做的提高效率的三个有效的尝试. l 使用statement进行绑定查询 使用statement可以提前构建查询语法树,在查询时不再

黄聪:mysql的SQL_CALC_FOUND_ROWS 使用 类似count(*) 使用性能更高

mysql的SQL_CALC_FOUND_ROWS 使用 类似count(*) 使用性能更高 在很多分页的程序中都这样写: SELECT COUNT(*) from `table` WHERE ......; 查出符合条件的记录总数 SELECT * FROM `table` WHERE ...... limit M,N; 查询当页要显示的数据 这样的语句可以改成: SELECT SQL_CALC_FOUND_ROWS * FROM `table` WHERE ...... limit M, N

mysql维护管理的几点小技巧(自我总结)

一.mysql数据库用户密码修改方法 (1).在知道mysql数据库root用户密码条件下修改root用户密码wxsemico方法一:[[email protected] ~]# mysql -u root -pEnter password: 输入root密码mysql> show databases;mysql> use mysql;mysql> update user set password=password('wxsemico') where user='root';mysql&

带条件的分页

一.后台 ①分类的list .jsp中的流程控制改成JSTL实现 <script type ="text/javascript" src="script/jquery-1.7.2.js"></script> <script type ="text/javascript"> $ (function (){ $ (".del").click(function(){ var $td = $(thi

带条件的分页【重点】

二.前台 1.不带条件的查询 [1 ]实现Dao方法:getPageList ().getTotalItemNum () ◆在BookDao中写接口方法 /** * 获取在指定条件下的分页数据 * @param pageNo 不能使用pageCondition返回的pageNoStr.要使用经过Page对象纠正的 * @param pageSize * @param pageCondition * @return */ List<Book> getPageList (int pageNo, i

Hibernate实现不带条件的简单分页查询。

不带条件的简单分页查询. 主要用到: Query query = getSessionDao().createQuery(hql1); 及两个分页条件: query.setFirstResult(firstPage*pageSize); query.setMaxResults(pageSize); /** * 不带条件的简单分页查询 * @author lxh * @version 1.0 * */ public class QueryListByPage extends HibernateDa