加入收藏
最新动态
最新动态
DB2

DB2数据库的外连接(OUTER JOIN),内连接(INNER JOIN)和交叉连接(

来源:未知 作者:admin 人气: 时间:2014-02-07

1、交叉连接(CROSS JOIN):有两种,显式的和隐式的,不带ON子句,返回的是两表的乘积,也叫笛卡尔积,返回记录的个数应当是a和b表中符合记录的和。
显式:select [cols_list] from a cross join b where [condition]
隐式:select [cols_list] from a, b where [condition]
2、内连接(INNER JOIN):有两种,显式的和隐式的,返回连接表中符合连接条件和查询条件的数据行,和我们写普通的sql相同。
显式:select [cols_list] from a inner join b on [condition] where [condition]
隐式:select [cols_list] from a, b where [condition]
3、外连接(OUTER JOIN):外连不但返回符合连接和查询条件的数据行,还返回不符合条件的一些行。外连接分三类:左外连接(LEFT OUTER JOIN)、右外连接(RIGHT OUTER JOIN)和全外连接(FULL OUTER JOIN)。
三者的共同点是都返回符合连接条件和查询条件(即:内连接)的数据行。不同点如下:
左外连接还返回左表中不符合连接条件单符合查询条件的数据行。
右外连接还返回右表中不符合连接条件单符合查询条件的数据行。
全外连接还返回左表中不符合连接条件单符合查询条件的数据行,并且还返回右表中不符合连接条件单符合查询条件的数据行。全外连接实际是上左外连接和右外连接的数学合集(去掉重复),即“全外=左外 UNION 右外”。
说明:左表就是在“(LEFT OUTER JOIN)”关键字左边的表。右表当然就是右边的了。在三种类型的外连接中,OUTER 关键字是可省略的
如:select [cols_list] from a left join b on [condition] where [condition]
多个表的情况可以用:
select [cols_list] from a left join b on [condition] inner join c on [condition] where [condition]

  • 三九手机网
  • 昆明强川科技
  • 云南蓝队网络
  • 公司地址:昆明市高新区科华路1-19号山灞大厦主楼9楼 邮编:650000
    手机:13759502558 传真:0871-63568770
      Copyright © 2012-2020 ynits.com 云南IT服务中心 版权所有 滇ICP备13000495号-1