数据库 
首页 > 数据库 > 浏览文章

mysql列转行以及年月分组实例

(编辑:jimmy 日期: 2024/11/17 浏览:3 次 )

如下所示:

SELECT count(DISTINCT(a.rect_id)) zcount, a.job_dept, 

DATE_FORMAT(submit_date, '%Y-%m') zsubmit_date 

FROM 

表名 a 

WHERE 

a.statu = 3 

AND a.rstatu = 2 

AND a.job_dept IN ('19', '20', '21') 

GROUP BY 

a.job_dept, 

DATE_FORMAT(submit_date, '%Y-%m')

其中关键在于DATE_FORMAT(submit_date, '%Y-%m')对时间年月进行了分组排序

SELECT      
zsubmit_date,      
MAX(CASE WHEN job_dept = '19' THEN zcount ELSE 0 END ) 19zcount,      
MAX(CASE WHEN job_dept = '20' THEN zcount ELSE 0 END ) 20zcount,      
MAX(CASE WHEN job_dept = '21' THEN zcount ELSE 0 END ) 21zcount  

FROM    
(     
SELECT       
count(DISTINCT(a.rect_id)) zcount, a.job_dept,        
DATE_FORMAT(submit_date, '%Y-%m') zsubmit_date     
FROM       
表名 a     
WHERE       
a.statu = 3       
AND a.rstatu = 2       
AND a.job_dept IN ('19', '20', '21')     
GROUP BY     
a.job_dept,     
DATE_FORMAT(submit_date, '%Y-%m')    
) q  GROUP BY    
zsubmit_date 

以上这篇mysql列转行以及年月分组实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

上一篇:explain分析sql效率的方法
下一篇:重置MySQL中表中自增列的初始值的实现方法
一句话新闻
Windows上运行安卓你用过了吗
在去年的5月23日,借助Intel Bridge Technology以及Intel Celadon两项技术的驱动,Intel为PC用户带来了Android On Windows(AOW)平台,并携手国内软件公司腾讯共同推出了腾讯应用宝电脑版,将Windows与安卓两大生态进行了融合,PC的使用体验随即被带入到了一个全新的阶段。
友情链接:杰晶网络 DDR爱好者之家 南强小屋 黑松山资源网 白云城资源网 站点导航 SiteMap