最近在学习Mastering Orcle SQL 一书,作为一名软件开发人员,SQL是基础中的基础,但是有些人学了一些以后呢,觉得自已会用了,能做一些常用的开发了,就突视了。
    下面是我学习Mastering Orcale SQL 的一些学习笔记,第一次写技术博客,写得毛躁,中间有一些文字是直接从书上翻译过来的,翻译得变扭,请大家见谅。
     希望此学习笔记会给大家一点点帮助!如果看了之后有什么不懂的可以去看 
Alan Beaulieu, Sanjay Mishra  的 Mastering Oracle SQL 2nd Editon原书 ,此书在 [url]http://www.oreilly.com/catalog/0596006322[/url] 有介绍!
 joins 句法     
.1 什么是 Join 查询
      Join 查询从两个或两个以上的表或视图中取出信息。 Join 查询不同于其常规的查询句法是它至少有以下两点条件:
l         Join 查询句法中, ”FROM” 关键字后面要引用两个或两个以上的表或视图。
l         Join 查询中,把一个表的行与另一个表的行关联了起来。
下面是简单的 Join 句法例子:

 

SELECT department.location_id, department.name, location.regional_group

 

FROM department JOIN location

 

ON department.location_id = location.location_id;

 

表名太长写起来不方便,当然可以用表别名来代替表名:

 

SELECT d.dept_id, d.name, l.regional_group

 

FROM department d JOIN location l

 

ON d.location_id = l.location_id;

 

     2.2 使用 using 从句

      使用 using 从句是为了简化 join 查询语句的写法,用 using 从句要有以下两个条件:
l         两个表的关联列是以“相等情况”来连接。
l         两个表的关联列的列名是相同的。
举例:使用 using 从句前:

 

SELECT department.location_id, department.name, location.regional_group

 

FROM department JOIN location

 

ON department.location_id = location.location_id;

 

使用这后 :

 

SELECT location_id, department.name, location.regional_group

 

FROM department JOIN location

 

USING (location_id);

 

多列关联的情况:

 

SELECT  . . .

 

FROM A JOIN B

 

ON A.c1 = B.c1 AND A.c2 = B.c2;
可写成 :

 

SELECT  . . .

 

FROM A JOIN B

 

USING (c1, c2);