在oracle中现有两个表 table1 ,table2,要将两个表结合生成第三张表,语句该如何些?

table1:IDNAMESCORE1lee702zhang803li60table2:IDNAMESCORE1lee902zhang1004wang70第三张表如下:I... table1:
ID NAME SCORE
1 lee 70
2 zhang 80
3 li 60

table2:
ID NAME SCORE
1 lee 90
2 zhang 100
4 wang 70
第三张表如下:
ID NAME SCORE2 SCORE1
1 lee 90 70
2 zhang 100 80
3 li 0 60
4 wang 70 0
SQL语句该如何写?
展开
 我来答
liangwei107
2011-09-27
知道答主
回答量:30
采纳率:0%
帮助的人:13.1万
展开全部
select distinct a.id,a.name,c.score score2,b.score score1
(select distinct t.id,name from(select id,name from table1
union all
select id,name from table2) t) a,table1 b table2 c
where a.id=b.id(+)
and a.id=c.id(+)
追问
比较好,但如果table1 , table2 是一个经过SQL串连的结果,且如果不只这两个表,这样重复的使用table1 , table2 ,写起来会很长啊。
哈哈嗯呐Z8
2011-09-27 · 超过30用户采纳过TA的回答
知道答主
回答量:203
采纳率:0%
帮助的人:84.3万
展开全部
select id,name,sum(score1) score1,sum(score2) score2 from(
select id,name, score as score1,0 score2 from table1
union all
select id,name, 0 score1,score as score2 from table2) group by id,name
追问
成功返回了结果,但似乎不是很高明,如果不是数字而是字符串怎么办
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式