Sql语句-case when then else end

简介:

根据上面的表信息输出下面的结果:



下面是建库和表结构据:

[html]  view plain  copy
 print ? 在CODE上查看代码片 派生到我的代码片
  1. create table DeptSales  
  2. (  
  3.     deptID int,  
  4.     SubjMonth int ,  
  5.     sales int ,  
  6.     deptname varchar(50)  
  7. )  

[html]  view plain  copy
 print ? 在CODE上查看代码片 派生到我的代码片
  1. insert into deptsales (deptid ,subjmonth,sales) values (1,1,55);  
  2. insert into deptsales (deptid ,subjmonth,sales) values (2,1,66);  
  3. insert into deptsales (deptid ,subjmonth,sales) values (3,1,77);  
  4. insert into deptsales (deptid ,subjmonth,sales) values (2,2,34);  
  5. insert into deptsales (deptid ,subjmonth,sales) values (4,2,56);  
  6. insert into deptsales (deptid ,subjmonth,sales) values (3,3,78);  

执行sql语句:

[html]  view plain  copy
 print ? 在CODE上查看代码片 派生到我的代码片
  1. mysql> select deptID as '部门',sum(case SubjMonth when 1 then sales end) '一月销售额',sum(case SubjMonth when 2 then sales end) '二月销售额',sum(case SubjMonth when 3 then sales end) '三月销售额',sum(case SubjMonth when 4 then sales end) '四月销售额'  from deptsales d group by deptID;  
  2. +------+------------+------------+------------+------------+  
  3. | 部门 | 一月销售额 | 二月销售额 | 三月销售额 | 四月销售额 |  
  4. +------+------------+------------+------------+------------+  
  5. |    1 | 55         | NULL       | NULL       | NULL       |  
  6. |    2 | 66         | 34         | NULL       | NULL       |  
  7. |    3 | 77         | NULL       | 78         | NULL       |  
  8. |    4 | NULL       | 56         | NULL       | NULL       |  
  9. +------+------------+------------+------------+------------+  
  10. 4 rows in set  
目录
相关文章
|
3月前
|
SQL 分布式计算 DataWorks
DataWorks产品使用合集之如何在SQL语句里使用CASE WHEN语句
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
2月前
|
SQL
SQL: 巧妙使用CASE WHEN实现查询
文章演示了如何利用SQL中的CASE WHEN语句来有效地进行条件性聚合查询,通过具体示例展示了CASE WHEN在统计分析中的应用技巧。
70 0
|
5月前
|
SQL 数据库
SQL中CASE WHEN THEN ELSE END的用法详解
SQL中CASE WHEN THEN ELSE END的用法详解
|
5月前
|
SQL
SQL语句case when then else end用法
SQL语句case when then else end用法
|
4月前
|
SQL 数据采集 BI
SQL CASE WHEN语句详解
SQL CASE WHEN语句详解
|
5月前
|
SQL Oracle 关系型数据库
mysql和oracle 命令行执行sql文件 数据库执行sql文件 执行sql语句
mysql和oracle 命令行执行sql文件 数据库执行sql文件 执行sql语句
76 0
|
6月前
|
SQL
SQL语句case when的用法
SQL语句case when的用法
|
SQL 存储 缓存
一文搞懂MySQL中一条SQL语句是如何执行的
一文搞懂MySQL中一条SQL语句是如何执行的
|
存储 SQL 缓存
【Mysql】执行sql语句后,mysql都做了什么?
【Mysql】执行sql语句后,mysql都做了什么?
【Mysql】执行sql语句后,mysql都做了什么?
|
SQL 关系型数据库 MySQL
MySQL SQL语句给当前日期加一天和减一天
MySQL SQL语句给当前日期加一天和减一天
下一篇
无影云桌面