mysql竖表查询结果展示为横表结构

方案一:


SELECT 
SUM(aa) as aa,
SUM(bb) as bb
FROM (
SELECT
dataTime,
metric_value as aa,
0 as bb
FROM UserTable
WHERE 
metric_code='aa'
UNION ALL

SELECT 
dataTime,
0 as aa,
metric_value as bb
FROM 
UserTable
WHERE 
metric_code='bb'
) boss 
WHERE 1=1
AND dataTime>='2018-05-01'

方案二:


SELECT 
a.dataTime,
MAX(case a.metric_code when 'aa' then a.metric_value else 0 end) aa,
MAX(case a.metric_code when 'bb' then a.metric_value else 0 end) bb
FROM(
	SELECT
	DATE_FORMAT(dataTime,'%Y-%m') dataTime,
	metric_code,
	sum(metric_value) metric_value
	FROM UserTable
	WHERE 
	dataTime>='2018-05-01'
	AND
	(metric_code='aa'
	OR metric_code='bb')
	GROUP BY DATE_FORMAT(dataTime,'%Y-%m'),metric_code
)a GROUP BY dataTime


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值