首页 > 代码库 > SQL从零到迅速精通【表连接查询】

SQL从零到迅速精通【表连接查询】

  看了这些表连接,个人感觉‘左外连接’、‘右外连接’和‘全外连接’应用好就可以了。

1.外连接

(1)LEFT JOIN(左连接):返回包括左表中的所有记录和右表中连接字段相等的记录。

    在student表和stu-detail表中,查询所有ID相同的学生号和居住城市,语句如下。

USE test

SELECT student.s_id,stu_detail.addr

FROM student LEFT OUTER JOIN stu_detail

ON student.s_id=stu_detail.s_id;

(2)RIGHT JOIN(右连接):右表取ALL,左表挑出和右表有相同标识的数据。

    在student表和stu_detaiil表中,查询所有ID相同的学生名字和对应学号,包括没有填写名称的学生,语句如下

USE test

SELECT student.name,stu_detail.s_id   --第一行说明要取什么数据

FROM student RIGHT OUTER JOIN stu_detail  --第二行说明表连接

ON student.s_id = stu_detail.s_id;  --第三行说明连接的条件,一般都是id相等

 

2.全外连接

  全外连接又称为完全外连接,该连接查询方式返回两个连接中所有的记录数据。

    在student表和stu_detail表中,使用全外连接查询,语句如下。

USE test

SELECT student.name,stu_detail.addr

FROM student FULL OUTER JOIN stu_detail

ON student.s_id = stu_detail.s_id;

 

SQL从零到迅速精通【表连接查询】