SQL中 inner join、 left join 、right join、 outer join之间的区别

举个例子你就能知道了!
A表(a1,b1,c1) B表(a2,b2)
a1 b1 c1 a2 b2
01 数学 95 01 张三
02 语文 90 02 李四
03 英语 80 04 王五
select A.*,B.* from A inner join B on(A.a1=B.a2)
结果是: a1 b1 c1 a2 b2
01 数学 95 01 张三
02 语文 90 02 李四

select A.*,B.* from A left outer join B on(A.a1=B.a2)
结果是: a1 b1 c1 a2 b2
01 数学 95 01 张三
02 语文 90 02 李四
03 英语 80 NULL NULL

select A.*,B.* from A right outer join B on(A.a1=B.a2)
结果是: a1 b1 c1 a2 b2
01 数学 95 01 张三
02 语文 90 02 李四
NULL NULL NULL 04 王五

select A.*,B.* from A full outer join B on(A.a1=B.a2)
结果是: a1 b1 c1 a2 b2
01 数学 95 01 张三
02 语文 90 02 李四
03 英语 80 NULL NULL
NULL NULL NULL 04 王五

 

 

posted on 2013-04-10 10:10  黑樱冢  阅读(154)  评论(0编辑  收藏  举报