码迷,mamicode.com
首页 > 数据库 > 详细

sql-行列转换

时间:2019-09-24 17:48:02      阅读:158      评论:0      收藏:0      [点我收藏+]

标签:cat   margin   tps   https   ext   div   tool   func   sele   

技术图片

 

 SELECT a.`name`,a.mon,

SUM(CASE RIGHT(a.mon,2) WHEN ‘01‘  THEN sa ELSE 0 END) ‘01月‘,
SUM(CASE RIGHT(a.mon,2) WHEN ‘02‘  THEN sa ELSE 0 END) ‘02月‘,
SUM(CASE RIGHT(a.mon,2) WHEN ‘03‘  THEN sa ELSE 0 END) ‘03月‘,
SUM(CASE RIGHT(a.mon,2) WHEN ‘04‘  THEN sa ELSE 0 END) ‘04月‘,
SUM(CASE RIGHT(a.mon,2) WHEN ‘05‘  THEN sa ELSE 0 END) ‘05月‘,
SUM(CASE RIGHT(a.mon,2) WHEN ‘06‘  THEN sa ELSE 0 END) ‘06月‘,
SUM(CASE RIGHT(a.mon,2) WHEN ‘07‘  THEN sa ELSE 0 END) ‘07月‘,
SUM(CASE RIGHT(a.mon,2) WHEN ‘08‘  THEN sa ELSE 0 END) ‘08月‘,
SUM(CASE RIGHT(a.mon,2) WHEN ‘09‘  THEN sa ELSE 0 END) ‘09月‘,
SUM(CASE RIGHT(a.mon,2) WHEN ‘10‘  THEN sa ELSE 0 END) ‘10月‘,
SUM(CASE RIGHT(a.mon,2) WHEN ‘11‘  THEN sa ELSE 0 END) ‘11月‘,
SUM(CASE RIGHT(a.mon,2) WHEN ‘12‘  THEN sa ELSE 0 END) ‘12月‘

FROM sale a

GROUP BY a.mon

技术图片

 

 

 

 

 

 

 

 

 

行转列列传行更具体例子

   1、查看数据

Sql代码  技术图片
  1. SELECT  * FROM tabName ;  

 

技术图片   

   2、列转行统计数据

Sql代码  技术图片
  1. SELECT DATE ,  
  2.     MAX(CASE NAME WHEN ‘小说‘ THEN Scount ELSE 0 END ) 小说,  
  3.     MAX(CASE NAME WHEN ‘微信‘ THEN Scount ELSE 0 END ) 微信   
  4. FROM TabName    
  5. GROUP BY DATE  

技术图片

3、行转列
Sql代码  技术图片
  1. SELECT DATE,GROUP_CONCAT(NAME) FROM tabname GROUP BY DATE  
技术图片
 

4、行转列统计数据

Sql代码  技术图片
  1. SELECT DATE, GROUP_CONCAT(NAME,‘总量:‘,Scount) AS b_str FROM tabName GROUP BY DATE  
技术图片   
Sql代码  技术图片
  1. SELECT DATE,NAME, GROUP_CONCAT(NAME,‘总量:‘,Scount) AS b_str FROM   TabName GROUP BY DATE ,NAME  
技术图片

 

sql-行列转换

标签:cat   margin   tps   https   ext   div   tool   func   sele   

原文地址:https://www.cnblogs.com/jentary/p/11579319.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!