前言

很多时候我们使用数据库的分类统计函数后都会得到一个纵向的表
如下:
分类统计后的纵表
分类统计后的纵表


这个时候我们可能需要的是一张横表
如下:
我们想要的横表
我们想要的横表

怎么实现的呢?
如下sql:
select 
	max(case name when '授权' then num end) as 'fmzlsq',
	max(case name when '撤回' then num end) as 'fmzlch',
	max(case name when '实审' then num end) as 'fmzlss',
	max(case name when '公开' then num end) as 'fmzlgk',
	max(case name when '终止' then num end) as 'fmzlzz'
	from (
			select count(a.credit_code) num,a.patent_legal_status name
				from enterprise_patent a 
				where  a.credit_code='91110108551385082Q' and a.patent_type='fmzl'  
				group by a.patent_legal_status,a.credit_code
			) b

可用max/sum函数

 
暂无评论