select e.name,d.depn from emp e ,dept d where e.id=d.id他和
select e.name,d.depn from emp e join dept d on e.id=d.id有什么区别呢
什么时候两个表间要用join连接符 什么时候不用加呢????
select e.name,d.depn from emp e join dept d on e.id=d.id有什么区别呢
什么时候两个表间要用join连接符 什么时候不用加呢????
--俩表tb1,tb2
with tb1 as
(
select 1 c1,'a' c2 from dual
union all
select 2 c1,'b' c2 from dual
),
tb2 as
(
select 1 c1,'aa' c2 from dual
union all
select 3 c1,'bb' c2 from dual
)--第一种
select a.c2,b.c2
from tb1 a,tb2 b
where a.c1 = b.c1
c2 c2
-------------------
a aa--第二种
select a.c2,b.c2
from tb1 a left join tb2 b on a.c1 = b.c1 c2 c2
-------------------
a aa
b
第一组 如果俩表不存在对应关系的id 那么查询数据为空 第二组 即使俩表不存在对应关系 至少表tb1的所有数据都会显示
结论:第二组查询出的数据不会比第一组少