sql语句的内链接和外连接有什么区别

。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

内链接是当两个表的属性字段对应得上的数据行,而外来接把两个表所有的属性字段的数据行都查出来

可以参考这篇文章。http://blog.csdn.net/u012561308/article/details/46799403

内连接和外链接可以和数学里边的交集和并集类似理解,内连接(交集)就是把两个表中的关联字段相同的数据查询出来,外链接(并集)又分左外链接,右外连接,全外连接;全外连接其实又是左、右外链接的并集。左外连接是对关联表和被关联表进行关联查询,左表有多少条符合条件的数据,最后查出来就有多少条,被关联表如果没有和关联表对应的数据,那么数据则是null。右外连接以此类推。
我觉得内连接很好理解,主要是外链接,下面简单举个例子:
a表 id name

1 张3

2 李四

3 王武

b表 id job parent_id

1 23 1
2 34 2

3 34 4

内连接

select a.*,b.* from a inner join b on a.id=b.parent_id

结果是

1 张3 1 23 1

2 李四 2 34 2

左连接

select a.*,b.* from a left join b on a.id=b.parent_id

结果是

1 张3 1 23 1

2 李四 2 34 2

3 王武 null

右连接

select a.*,b.* from a right join b on a.id=b.parent_id

结果是

1 张3 1 23 1

2 李四 2 34 2

null 3 34 4

完全连接

select a.*,b.* from a full join b on a.id=b.parent_id

结果是

1 张3 1 23 1

2 李四 2 34 2

null 3 34 4

3 王武 null