mysql中的if函数

mysql中的if函数还是很强大的,特别是在做一些统计查询时,

可以讲多个查询结果合并成一条记录

例如:有这样一张表

产品名productname用户名username部门departname评分score
香瓜子张三调查部2
香瓜子李四调查部3
香瓜子王五市场部4
香瓜子赵六市场部5
原味瓜子明明调查部6
原味瓜子琪琪开发部7

通过一条sql语句查询出每个部门对产品的评分以及总分

显示如下

产品名productname开发部评分调查部评分市场部评分总分
原味瓜子76013
香瓜子05914


可通过如下sql语句得到此效果

SELECT t.productname,
max(s1) 开发部评分,
max(s2) 调查部评分,
max(s3) 市场部评分,
max(s1)+max(s2)+max(s3) 总分 
FROM (
SELECT productname,departname,
if(departname='开发部',sum(score),0) s1,
if(departname='调查部',sum(score),0) s2,
if(departname='市场部',sum(score),0) s3
FROM score
GROUP BY productname,departname
)t GROUP BY t.productname;



  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值