【SQL】oralce中使用group by和case when按照条件求和

假设我们有一个Salary 薪水表。这个表的字段分别为:id, name, salary, level  在这个表中,每个人有不同的级别(level)。我们要根据不同的级别统计相同级别员工的薪水总和。

此时我们需要使用group by 来对表格进行分组,然后使用case when 语句来进行判断。

case when介绍如下:http://www.cnblogs.com/sun1512/p/6108622.html?utm_source=itdadao&utm_medium=referral

 

SQL:

select name, sum(case when level=1 then salary else0 end) as salary1 , sum(case when level=1 then salary else0 end) as salary12  from Salary group by level;

 

posted @ 2017-09-18 17:34  contixue  阅读(3606)  评论(0编辑  收藏  举报