内连接:仅仅显示匹配的行
外连接:设法显示不匹配的行,包括左(外)连接、右(外)连接、全(外)连接
左(外)连接:左表的行全显示(右表不存在匹配时填null)left join
右(外)连接:右表的行全显示(左表不存在匹配时填null)right join
全(外)连接:左连接和右连接的结果再做合并(union) join 或 inner join
Oracle的写法 是在需要补充填null的一方添加“(+)”,表示用null去匹配另一边“没有匹配”的行。
Oracle
--left join
select a.id id_a, b.id id_b
from temp1 a, temp2 b
where a.id(+) = b.id
--right join
select a.id id_a, b.id id_b
from temp1 a, temp2 b
where a.id= b.id(+)
ASNI
--inner join(inner is optional )
select ta.id id_a, tb.id id_b
from temp1 ta
inner join temp2 tb
on ta.id = tb.id
--left join
select ta.id id_a, tb.id id_b
from temp1 ta
lest join temp2 tb
on ta.id = tb.id
--right join
select ta.id id_a, tb.id id_b
from temp1 ta
right join temp2 tb
on ta.id = tb.id
Oracle数据库_内连接_外连接_左连接_右连接
最新推荐文章于 2023-10-31 14:33:42 发布