5张表连接查询sql语句 SQL查询 [5]连接查询

SQL查询:[5]连接查询――简介

实际上,在应用中所需要的数据来自一个表的情况非常少,经常会需要查询两个或两个以上的表。这类查询叫做连接查询。这种连接查询通常建立在存在相互关联的父子表之间;表的连接查询包括等值连接、非等值连接、自连接、内连接和外连接。

SQL查询:[5]连接查询――工具/原料
已安装有Oracle数据库11g 已安装有Oracle SQL DeveloperSQL查询:[5]连接查询――基本连接查询

SQL查询:[5]连接查询 1、

等值连接:

等值连接是最常见的一种连接查询,通常是在主外键关联关系的表间建立,并将连接条件设定为有关系的列,使用“=”连接相关的表。如下图:


SQL查询:[5]连接查询 2、

非等值连接:

非等值连接是指在多个表中使用非等号连接,查询在多个表中有非等值关联关系的数据,非等值连接操作符包括>、>=、<、<=、<>以及BETWEEN...AND、LIKE、IN等。具体实现如下图:


SQL查询:[5]连接查询 3、

自连接:

自连接是一种比较特殊的连接查询,数据来源是一个表。如下图:

SQL查询:[5]连接查询――内连接和外连接:

SQL查询:[5]连接查询 1、

上述所介绍的连接查询都属于内连接,即返回满足连接条件的数据记录。在有些情况下需要返回那些不满足连接条件的记录,此时需要使用外连接来返回那些不满足连接条件的记录。在9I之前外连接在WHERE条件中指定,9I版本之后则一般在FROM短语中指定,9I版本之后外连接语法如下:

SELECT table1.column,table2.column

5张表连接查询sql语句 SQL查询 [5]连接查询

FROM table1 [INNER|LEET|RIGHT|FULL] JOIN table2

ON table1.column1=table2.column2;

9I版本之前外连接语法如下:

SELECT table1.column,table2.column

FROM table1,table2

WHEREtable1.column1 (+)=table2.column2;


SQL查询:[5]连接查询 2、

内连接:

内连接返回所有满足条件的记录,内连接方式有几种,第一种是上面介绍的等值连接这种形式,这里就不再重复介绍;第二种方式是使用NATURAL JOIN短语,将两个表中所有同名列做等值连接;第三种方式是使用USING子句实现是将两个表中指定的同名列做等值连接,避免了同名列可能因类型不同导致的错误;第四种是使用ON子句。

SQL查询:[5]连接查询_链接查询


SQL查询:[5]连接查询 3、

左外连接:

左外连接是内连接的一种扩展,不止会返回满足连接条件的记录,还会返回那些不满足连接条件的操作符左边表的其他记录。

SQL查询:[5]连接查询_链接查询


SQL查询:[5]连接查询 4、

右外连接:

右外连接和左外连接相似,右外连接不止会返回满足连接条件的记录,还会返回那些不满足连接条件的操作符右边表的其他记录。


SQL查询:[5]连接查询 5、

全外连接:

全外连接除了会返回满足连接条件的记录,还会返回那些不满足连接条件的所以其他行。

SQL查询:[5]连接查询――注意事项
多表的连接查询需要在WHERE子句中定义有效的连接条件。一旦给表定义了别名,在整个SQL语句中就不能再使用表的全名。做连接查询的多个表中如果有同名的列,必须加上表的前缀。使用NATURAL JOIN短语方式时,偌两个表中的同名列数据类型不同不能比较的话,将会报错。

  

爱华网本文地址 » http://www.413yy.cn/a/8104070103/168448.html

更多阅读

张氏族谱的博客 张氏族谱查询

张氏族谱的博客好友!1QAZXSW2 wq21wq21eq21 wq21wq21eq21@yahoo.com wq21wq21eq21 65432123456 我家地址:http://hexun.com/q22120418759MOWZDQYOX对您的文章 "1QAZXSW2 >1QAZXSW2" 发表了评论。 张文祁字燕大--aaa- aaa姚明06-07

张小娴经典语句 席慕容经典语录

年少的恋情。是多么的纯真和美丽。却敌不过一个公开考试。哭和难过。也没法挽回一段消逝了的爱。不是中学生和大学生的问题。两个大学生也会分开。而是。人生里有太多时候。是形势毁了一段爱情。你遇上一个人。你爱他多一点。那么。

SQL JOIN多表连接查询 | 码农网 码农网 下载不了

From:http://blog.csdn.net/steryzone/article/details/4997060inner join(等值连接) 只返回两个表中联结字段相等的行left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录right join(右联接) 返回包括右表中的所

声明:《5张表连接查询sql语句 SQL查询 [5]连接查询》为网友流云如水分享!如侵犯到您的合法权益请联系我们删除