标签:
N多年之前,刚刚接触SQL的时候,就被多表查询中的各种内连接,外连接,左外连接,右外连接等各式各样的连接弄的晕头转向。
更坑的是书上看到的各种表连接还有两种不同的写法,
比如对于表A,表B的查询
1,内连接两种写法:
select * from A, B where A.id = B.id;
select * from A join B on A.id = B.id;
2,右外连接写法:
select * from A, B where A.id(+) = B.id;
select * from A right join B on A.id = B.id;
3,左外连接写法:
select * from A, B where A.id = B.id(+);
select * from A left join B on A.id = B.id;
而对各个查询结果的区别,也着实是让人痛苦的记忆。
尽管这块知识点如今看来很容易理解,但对初学者还是造成了不少困惑。
而今天恰好看到网上的一张图片,很好的描述了各个连接的区别,非常全面,就是下面的这张图。
我不是开发人员,这里面的一些连接我至今都没有用到过,但看到这个图时,对SQL Joins就完全懂了。
标签:
原文地址:http://www.cnblogs.com/jyzhao/p/3930551.html