MYSQL 如何对一个字段进行分类统计

例如:如下图所示,对数据库的EmailSource字段按日期分类汇总

2011031009113169.png

因此我们可以写入如下的SQL语句类解决这样的问题

SELECT 
sum(case when `EmailSource`='FM' then 1 else 0 end) as FM_Statistic,
sum(case when `EmailSource`='UOC' then 1 else 0 end) as UOC_Statistic,
sum(case when `EmailSource`='OC' then 1 else 0 end) as OC_Statistic,
DATE_FORMAT(Date,'%Y-%m-%d') AS `DateTime` 
FROM `user_performance` 
WHERE Email != '' AND Email != 'TOTAL'
AND (DATE_FORMAT(Date,'%Y-%m-%d') >= DATE_FORMAT('2011-02-5','%Y-%m-%d')) 
AND (DATE_FORMAT(Date,'%Y-%m-%d') <= DATE_FORMAT('2011-03-07','%Y-%m-%d')) 
GROUP BY `Date`

搜索后结果为:

FM_StatisticUOC_StatisticOC_StatisticDateTime
1012011-02-07
2022011-02-08
260262011-02-09
260262011-02-10
280282011-02-11
310312011-02-14
310312011-02-15
300302011-02-16
290292011-02-17
280282011-02-18
310312011-02-21
320322011-02-22
300302011-02-23
320322011-02-24
3131312011-02-25
4442011-02-26
5552011-02-27
2929292011-02-28
3232322011-03-01
3030302011-03-02
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值