
Oracle中怎么把相同的行的值累加,其只显示相同的行的名称,入下图所示。急
查询需要使用到sum,decode函数及unionall联合查询示例:Select类别,西药费,中成药费,中草药费from门诊费用记录Where门诊标志=1Unional...
查询需要使用到sum,decode函数及union all联合查询
示例:
Select 类别,西药费,中成药费,中草药费 from 门诊费用记录
Where 门诊标志=1
Union all
Select 类别,西药费,中成药费,中草药费 from 住院费用记录
Where 门诊标志=2 展开
示例:
Select 类别,西药费,中成药费,中草药费 from 门诊费用记录
Where 门诊标志=1
Union all
Select 类别,西药费,中成药费,中草药费 from 住院费用记录
Where 门诊标志=2 展开
3个回答
展开全部
我猜你的数据库字段不是你示例中给出的样子吧?
只能靠猜测给出个答案:
select
sum(decode( 费用项目,'西药费',费用,0)) as '西药费',
sum(decode(费用项目,'中成药费',费用,0)) as '中成药费',
sum(decode(费用项目,'中草药费',费用,0)) as '中草药费',
from 费用表
union all
只能靠猜测给出个答案:
select
sum(decode( 费用项目,'西药费',费用,0)) as '西药费',
sum(decode(费用项目,'中成药费',费用,0)) as '中成药费',
sum(decode(费用项目,'中草药费',费用,0)) as '中草药费',
from 费用表
union all
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select decode(类别,null,'合计'),sum(西药费),sum(中成药费),sum(中草药费) from (
Select 类别,西药费,中成药费,中草药费 from 门诊费用记录
Where 门诊标志=1
Union all
Select 类别,西药费,中成药费,中草药费 from 住院费用记录
Where 门诊标志=2)
group by cub(类别)
Select 类别,西药费,中成药费,中草药费 from 门诊费用记录
Where 门诊标志=1
Union all
Select 类别,西药费,中成药费,中草药费 from 住院费用记录
Where 门诊标志=2)
group by cub(类别)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用decode干啥?
select 类别,sum(,西药费).....
from
(
Select 类别,西药费,中成药费,中草药费 from 门诊费用记录
Where 门诊标志=1
Union all
Select 类别,西药费,中成药费,中草药费 from 住院费用记录
Where 门诊标志=2
) group by 类别
select 类别,sum(,西药费).....
from
(
Select 类别,西药费,中成药费,中草药费 from 门诊费用记录
Where 门诊标志=1
Union all
Select 类别,西药费,中成药费,中草药费 from 住院费用记录
Where 门诊标志=2
) group by 类别
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询