SQL中的左连接与右连接的区别

 

SQL中的左连接与右连接的区别

 

A表(a1,b1,c1)     B表(a2,b2)

a1 b1 c1             a2      b2

1 跑步  90           1       Tom

2 游泳  80           2       Lucy

3 跳远 85 5       Gray

 

 


select A.*,B.* from A

left outer join B on(A.a1=B.a2)

结果是:

a1 b1 c1 a2 b2

1 跑步  90  1  Tom

游泳  80  2  Lucy

跳远 85  NULL NULL

 

select A.*,B.* from A

right outer join B on(A.a1=B.a2)

结果是:

a1 b1 c1     a2   b2

 

1 跑步  90      1       Tom

游泳  80      2       Lucy

 

NULL NULL NULL  5     Gray

 

select * from tableA left outer join tableB on tableA.id=tableB.id tableA中的数据肯定全部出现,这就是左连接.如果把left换成right,那么就是 tableB中的数据全部出现。对于不满足tableA.id=tableB.id条件的属性显示NULL , 左连接影响的是右表,右连接影响的是左表.

 

你可能感兴趣的:(sql)