微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

oracle分组

Group by 函数往往不能把多个不同分组分为一个组,这是我们可以用一种折中的办法,
SELECT
(CASE
		WHEN VI.BLEVEL > '3' THEN
		  '3'
		ELSE
		  VI.BLEVEL
		END) AS BLEVEL

第一次group时,对分组字段进行,重新赋值;根据第一次的group结果,重新分组即可
SELECT "SUM"(vx.Amount) AS AMOUNT,VX.T_ITEM,vx.BLEVEL FROM
(
SELECT
(CASE
		WHEN VI.BLEVEL > '3' THEN
		  '3'
		ELSE
		  VI.BLEVEL
		END) AS BLEVEL[/color],"SUM"(VI.AMOUNT) AS AMOUNT,VI.T_ITEM FROM VI_INCOME_ITEM_MAPPING vi WHERE 
"SUBSTR"(VI.TXN_DATE,1,6)  >='201601' AND "SUBSTR"(VI.TXN_DATE,6)  <='201608' 
AND VI.T_ITEM IN ('T010101','T010201','T0103','T010401','T0105','T010601') 
[color=blue]GROUP BY VI.T_ITEM,VI.BLEVEL[/color]) vx [color=blue]GROUP BY VX.T_ITEM,VX.BLEVEL

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐