左连接,右连接,内连接,Union

数据库的三种常用连接解析:

  官方解释:

    1、left [outer] join(左外联接) 返回 包括左表中的所有记录右表中联结字段相等的记录

    2、right [outer] join(右外联接) 返回 包括右表中的所有记录左表中联结字段相等的记录

    3、inner [outer] join(等值连接 又名内连接) 只返回 两个表中联结字段相等的行

PS:论左,右连接得到的结果集的记录数肯定是大于等于主表的记录数的,而内连接的结果集可以是小于,等于连接的表的记录数的。

      左,右还是内连接表的一个重要的用处:可以横行的扩展一个表,可以得到一个有更多属性的新的表

Union

  UNION 指令的目的是将两个 SQL 语句的结果合并起来,PS:UNION 内部的 SELECT 语句必须拥有相同数量的列(包括列的名称,顺序,数据类型),列也必须拥有相似的数据类型。同时,每条 SELECT 语句中的列的顺序必须相同。

      UNION 可以纵向的增加一个表的记录行数

PS:默认地,UNION 操作符选取不同的值,即UNION是去了重的。如果允许重复的值,请使用 UNION ALL,另外,UNION 结果集中的列名总是等于 UNION 中第一个 SELECT 语句中的列名。

    右连接 实例代码:

1 SELECT
2     files.id,files.filepath,files.filename
3 FROM
4     files
5 RIGHT JOIN pfiles ON files.id = pfiles.id

     左连接 实例代码:

1 SELECT
2     files.id,files.filepath,files.filename
3 FROM
4     files
5 LEFT JOIN pfiles ON files.id = pfiles.id

         内连接 实例代码:  

1 SELECT
2     files.id,files.filepath,files.filename
3 FROM
4     files
5 INNER JOIN pfiles ON files.id = pfiles.id

    Union:

1 SELECT
2     files.id
3 FROM
4     files
5 UNION
6     SELECT
7         pfiles.id
8     FROM
9         pfiles

posted on 2015-03-25 10:46  夜雨梧桐  阅读(576)  评论(0编辑  收藏  举报

导航