Oracle多表連線查詢

2021-08-04 19:13:34 字數 551 閱讀 9205

兩張表沒有連線條件時(這個看情況用,資料多的時候沒有做過驗證):

select a.*,b.* from  (select row_number() over(order by id) as rn,* from a) a

left outer join (select row_number() over(order by id) as rn,* from b) b  

on a.rn= b.rn

有連線條件但列名不同時:

select a.usercode,a.phone,b.roleid,c.rolename from

t_user a

join

t_userrole b

on a.usercode=b.usercode

join

t_role c

on b.roleid=c.id

如果兩表查詢出來列名都一樣,用  union  all  就可以了

select  *  from  表1

union  all

select  *  from  表2

oracle多表連線查詢

連線查詢分為 內連線 相等內連線,非等內連線,自連線 外連線 左外連線,右外連線,全外連線 交叉連線,自然連線 一 內連線 1 相等內連線 使用等號 指定連線條件的連線查詢 使用where關鍵字的連線查詢 select from 表1,表2 where 表1.欄位1 表2.欄位1 使用join關鍵字...

Oracle查詢多表連線

oracle多表連線查詢資料主要分3類 一 交叉連線 表a有3條資料,表b有4條資料,交叉連線後有12條資料 select empno,ename,sal,emp.deptno,dname from emp cross join dept select empno,ename,sal,emp.dep...

Oracle多表連線與子查詢

1 等值連線 迪卡爾集連線 select ename,a.deptno as a deptno,b.deptno as b deptno b.dname as 部門 from emp a,dept b 等值連線 select ename,a.deptno as a deptno,b.deptno a...