外连接OUTER JOIN

外连接OUTER JOIN

1   LEFT [OUTER] JOIN,左外连接

  显示左表的全部记录及右表符合连接条件的记录

  下面我们来演示一下,操作命令及部分结果如下:

SELECT   goods_id,goods_name,cate_name    FROM   tdb_goods    LEFT   JOIN   tdb_goods_cates   ON    tdb_goods.cate_id     =    tdb_goods_cates.cate_id\G;

  现在我们发现一共得到了23条记录,我们来看一下第23条记录,我们发现他的商品分类为NULL,所以说左外连接就是左表的全部和右表中符合条件的记录,如果说没有符合条件的就显示为NULL

  这就是我们在商品表中插入的那条商品类别为13的那条记录,因为他在商品类别表中不存在,所以就显示为NULL。这就是左外连接

2  RIGHT [OUTER] JOIN,右外连接

  显示右表的全部记录及左表符合连接条件的记录

  下面我们再来看一下右外连接,我们只需要将LEFT改为RIGHT即可。同样没有的就显示为NULL,大家自己可以做一下练习。

SELECT   goods_id,goods_name,cate_name    FROM   tdb_goods    RIGHT   JOIN   tdb_goods_cates   ON    tdb_goods.cate_id     =    tdb_goods_cates.cate_id\G;

时间: 2024-10-16 22:05:49

外连接OUTER JOIN的相关文章

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

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

oracle 内连接(inner join)、外连接(outer join)、全连接(full join)

转自:https://premier9527.iteye.com/blog/1659689 建表语句: create table EMPLOYEE(EID NUMBER,DEPTID NUMBER,ENAME VARCHAR2(200)) create table DEPT(DEPTID NUMBER,DEPTNAME VARCHAR2(200)) oracle中的连接可分为,内连接(inner join).外连接(outer join).全连接(full join),不光是Oracle,其他很

Oracle左连接、右连接、全外连接以及(+)号用法(转)

Oracle  外连接(OUTER JOIN) 左外连接(左边的表不加限制) 右外连接(右边的表不加限制) 全外连接(左右两表都不加限制) 对应SQL:LEFT/RIGHT/FULL OUTER JOIN. 通常省略OUTER关键字, 写成:LEFT/RIGHT/FULL JOIN. 在左连接和右连接时都会以一张A表为基础表,该表的内容会全部显示,然后加上A表和B表匹配的内容. 如果A表的数据在B表中没有记录. 那么在相关联的结果集行中列显示为空值(NULL). 对于外连接, 也可以使用“(+)

Oracle左连接、右连接、全外连接以及(+)号用法

阅读目录 1.准备工作 2.左外连接(LEFT OUTER JOIN/ LEFT JOIN) 3.右外连接(RIGHT OUTER JOIN/RIGHT JOIN) 4.全外连接(FULL OUTER JOIN/FULL JOIN) 1.准备工作 Oracle  外连接(OUTER JOIN)包括以下: 左外连接(左边的表不加限制) 右外连接(右边的表不加限制) 全外连接(左右两表都不加限制) 对应SQL:LEFT/RIGHT/FULL OUTER JOIN. 通常省略OUTER关键字, 写成:

内连接 外连接 自连接 交叉连接

======================================================== My SQL如下: ======================================================== 1.内联接(典型的联接运算,使用像 =  或 <> 之类的比较运算符).包括相等联接和自然联接. 内联接使用比较运算符根据每个表共有的列的值匹配两个表中的行.例如,检索 students和courses表中学生标识号相同的所有行. 2.外联接.外联接

SQL中的连接可以分为内连接,外连接,以及交叉连接 。

1. 交叉连接CROSS JOIN 如果不带WHERE条件子句,它将会返回被连接的两个表的笛卡尔积,返回结果的行数等于两个表行数的乘积: 举例,下列A.B.C 执行结果相同,但是效率不一样: A:SELECT * FROM table1 CROSS JOIN table2 B:SELECT * FROM table1,table2 C:select * from table1 a inner join table2 b A:select a.*,b.* from table1 a,table2

内连接与外连接的区别

内连接(inner) join: 返回两个集合同时存在且公有属性完全相同的记录, 相当于左右集合的交集 例子:select * from A join B; 或者 select * from A inner join B; 外连接outer join: 分为3种: 左外连接(left outer join): 返回内连接+只存在左边集合但不在右边集合的数据 例子:select * from A left outer join B 右外连接(right outer join): 与左外连接相同,不

Oracle 数据库的内外连接区别及外连接详解

内连接(inner join):返回2个表中完全符合条件的记录,结果集中每个表的字段内容均来自各自的表:外连接(outer join):返回2个表中完全符合条件的记录,再加上2个表中各自的记录,结果集中的字段只有一个表中有记录时,另一个表中的字段均使用空值null填写. Oracle  外连接 (1)左外连接 (左边的表不加限制)       (2)右外连接(右边的表不加限制)       (3)全外连接(左右两表都不加限制) 外连接(Outer Join) outer join则会返回每个满足

Oracle 左连接、右连接、全外连接、(+)号作用 (转载)

Oracle  外连接 (1)左外连接 (左边的表不加限制)       (2)右外连接(右边的表不加限制)       (3)全外连接(左右两表都不加限制) 外连接(Outer Join) outer join则会返回每个满足第一个(顶端)输入与第二个(底端)输入的联接的行.它还返回任何在第二个输入中没有匹配行的第一个输入中的行.外连接分为三种: 左外连接,右外连接,全外连接. 对应SQL:LEFT/RIGHT/FULL OUTER JOIN. 通常我们省略outer 这个关键字. 写成:LE