日期:2014-05-17  浏览次数:21127 次

oracle两个表的结果如何拼接,急,求高手~

求高手帮帮忙,不胜感激!!
------解决方案--------------------
为什么不直接合并?
select a.id,a.name
------解决方案--------------------
b.name from tab_a a,tab_b b where a.id=b.id order by 1

------解决方案--------------------
引用:
我自己写出来了,不知效率如何
select DBMS_RANDOM.RANDOM,c.id ,wmsys.wm_concat(c.name) end from 
(
select rownum as id, a.name from tab_a a where rownum<5
union all
select rownum as id,b.name from tab_b b where rownum<5
) c
group by c.id

为什么要用GROUP BY,直接连接啊。
select t1.rn, t1.name 
------解决方案--------------------
 t2.name
  from (select rownum rn, t1.name from t1 where rownum < 5) t1,
       (select rownum rn, t2.name from t2 where rownum < 5) t2
 where t1.rn = t2.rn

------解决方案--------------------
select a.id,a.name
------解决方案--------------------
b.name name from a,b where a.id=b.id,得附加匹配条件