mysql sum聚合函数和if()函授的联合使用
今天去面试遇到一个数据库试题,首先说一下表结构如下:
表结构:mytest

表数据:mytest

要查询的结果如下:

在本题目中,需要用到sum聚合函数和if函数
sql如下:
SELECT `date`,SUM(IF(ifwin="胜",1,0)) AS 胜,SUM(IF(ifwin="负",1,0)) AS 负 FROM mytest GROUP BY `date`;
特别注意:sum函数试求和的,求出所有1的和,所以这里用sum 而不是count函数。
当然,本查询还可以使用其他方法:
SELECT mt.`date`,(SELECT COUNT(*) FROM mytest mt1 WHERE mt1.ifwin="胜" AND mt1.date=mt.date ) AS 男,
(SELECT COUNT(*) FROM mytest mt1 WHERE mt1.ifwin="胜" AND mt1.date=mt.date ) AS 女
FROM mytest mt GROUP BY mt.date;
本方法也可以查询出数据。
mysql sum聚合函数和if()函授的联合使用的更多相关文章
- MySQL sum聚合函数
select sum(if(money > 0, money, 0)) as money from total_money 意思是如果money > 0, 将money的值累加到tot ...
- MySQL数据库聚合函数
+++++++++++++++++++++++++++++++++++++++++++标题:MySQL数据库聚合函数时间:2019年2月25日内容:MySQL数据库聚合函数重点:MySQL数据库聚合函 ...
- MySQL的聚合函数
MySQL的聚合函数 网站:https://www.runoob.com/mysql/mysql-functions.html 函数名 功能描述 count() 计数 sum() 求和 avg() 平 ...
- mysql sum() 求和函数的用法
查询在record表中 name=? 的 money 加起来的值使用聚和函数 sum() 求和select sum(money) from record t where t.name = ?另外:co ...
- oracle sum()聚合函数
原文链接:https://blog.csdn.net/cizatu5130/article/details/100291347 oracle sum()聚合函数 2016-05-13 20:08:00 ...
- mysql之聚合函数、group by、having
sql中提供聚合函数可以用来统计,求和,求最值等 那么聚合函数有哪些呢? COUNT 统计行数量 SUM 求某一列的和 AVG 求某一列的平均值 MAX 求某 ...
- Mybatis-Plus中使用max、sum聚合函数、只查询指定字段、查询语句多个OR处理
聚合函数查询 可以使用以下方法 QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.select(" I ...
- mysql 从聚合函数group by到sql_mode
说到group by, 想必大家都不陌生, 就是对查询的数据进行分组,我们可以通过该操作实现一些特殊需求,比如去重. 最近在项目中使用HQL:" from TSjrz where CBh = ...
- MySQL常用聚合函数
官方文档:Aggregate (GROUP BY) Functions Name Description AVG() Return the average value of the argument ...
随机推荐
- axios使用配置
axios 配置 下载cnpm install axios vue-axios --save-dev main.js文件中配置 import axios from 'axios' import Vue ...
- 【C++】【MFC】创建新的线程函数
DWORD WINAPI MyThreadProc (LPVOID lpParam){ somestruct* pN = (somestruct*)lpParam; // 将参数转为你的类型 ... ...
- java Vamei快速教程19 嵌套类
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 到现在为止,我们都是在Java文件中直接定义类.这样的类出现在包(package) ...
- URL跨项目调用方法,获取返回的json值,并解析
package com.mshc.util; import java.io.BufferedReader; import java.io.IOException; import java.io.Inp ...
- POJ 3126 Prime Path(筛法,双向搜索)
题意:一个4位的素数每次变动一个数位,中间过程也要上素数,问变成另一个的最小步数. 线性筛一遍以后bfs就好.我写的双向,其实没有必要. #include<cstdio> #include ...
- UVA Live Archive 4394 String painter(区间dp)
区间dp,两个str一起考虑很难转移. 看了别人题解以后才知道是做两次dp. dp1.str1最坏情况下和str2完全不相同,相当于从空白串开始刷. 对于一个区间,有两种刷法,一起刷,或者分开来刷. ...
- dojo/Deferred类和dojo/promise类的使用
参考博客:https://blog.csdn.net/blog_szhao/article/details/50220181 https://dojotoolkit.org/docume ...
- MacOS内核调试环境搭建
http://ddeville.me/2015/08/using-the-vmware-fusion-gdb-stub-for-kernel-debugging-with-lldb http://dd ...
- 将指定的form表单所有输入项转为json数据
今天学习时,看到的将form表单中的输入数据转成json 的jquery代码,直接贴出来: $.fn.serializeJson=function(){ var serializeObj={}; va ...
- GNU Parallel Tutorial
GNU Parallel Tutorial Prerequisites Input sources A single input source Multiple input sources Linki ...