急! Oracle 两表查询问题

我是新手,怎么动态显示列名啊?大侠帮帮我吧!-------------------------------表1ID付款方式具体形式1001现金2002银行卡2003支票-... 我是新手,怎么动态显示列名啊?
大侠帮帮我吧!

-------------------------------表1
ID 付款方式 具体形式
1 001 现金
2 002 银行卡
2 003 支票

-------------------------------表2
ID 商家 付款方式 付款金额
1 1001 001 100
2 1001 002 200
3 1001 003 300
4 1002 001 150
5 1002 003 250

生成如下统计(付款方式可以随时变化)
ID 商家 总金额 现金 银行卡 支票
1 1001 600 100 200 300
2 1002 400 150 0 250

--两张表我知道怎么写, 但是它需要查出表1的'具体形式'作为结果的列名,这个我就不会了~!!

--测试数据:
Create table Table_A
(
t_ID number,
TypeID varchar2(10),
TypeName varchar2(10)
);
insert into Table_A values(1,'001','现金');
insert into Table_A values(2,'002','银行卡');
insert into Table_A values(3,'003','支票');

-------------------------------------------------
Create table Table_B
(
t_id2 Number,
Company varchar(10),
TypeID varchar2(10),
Mon number
);
insert into Table_B values(1,'1001','001',100);
insert into Table_B values(2,'1001','002',200);
insert into Table_B values(3,'1001','003',300);
insert into Table_B values(4,'1002','001',150);
insert into Table_B values(5,'1002','003',250);

那位Oracle高手帮我解决下, 在下不胜感激!
问题补充:是要这样的结果:

生成如下统计(付款方式可以随时变化)
ID 商家 总金额 现金 银行卡 支票
1 1001 600 100 200 300
2 1002 400 150 0 250
展开
 我来答
hellokittywxp
2008-07-29 · TA获得超过174个赞
知道答主
回答量:101
采纳率:0%
帮助的人:0
展开全部
select ze.Company,ze.Mon,nvl(xj.Mon,0),nvl(yhk.Mon,0),nvl(zp.Mon,0) from
(select Company,sum(Mon) Mon from Table_B group by Company) ze,
(select Company,sum(Mon) Mon from Table_B where TypeID='001' group by Company) xj,
(select Company,sum(Mon) Mon from Table_B where TypeID='002' group by Company) yhk,
(select Company,sum(Mon) Mon from Table_B where TypeID='003' group by Company) zp
where ze.Company=xj.Company(+)
and ze.Company=yhk.Company(+)
and ze.Company=zp.Company(+);

说明:上面的写法比较啰嗦,但是比较容易理解
ze为总额
xj为现金
yhk为银行卡
zp为支票
ZESTRON
2024-09-04 广告
在Dr. O.K. Wack Chemie GmbH,我们高度重视ZESTRON的表界面分析技术。该技术通过深入研究材料表面与界面的性质,为提升产品质量与可靠性提供了有力支持。ZESTRON的表界面分析不仅涵盖了相变化、化学反应、吸附与解吸... 点击进入详情页
本回答由ZESTRON提供
朱满福
2008-07-29 · 超过48用户采纳过TA的回答
知道小有建树答主
回答量:146
采纳率:50%
帮助的人:38.2万
展开全部
select t1.id,t2.shangjia,t3.totalcount,t1.xianjin
t1.yinhangka,t1.zhipia
from table1 t1,table2 t2--- 取别名
(select sum(jin,er)from t2 group by id) t3
----先分组类加总金额

where t1.id=t2.id
and t2.id=t3.id
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式