oracle sql 内连接 左外连接 右外连接 全外连接

1.创建测试表并准备测试数据
[email protected]> create table a (a number(1),b number(1),c number(1));
[email protected]> create table b (a number(1),d number(1),e number(1));
[email protected]> insert into a values(1,1,1);
[email protected]> insert into a values(2,2,2);
[email protected]> insert into a values(3,3,3);
[email protected]> insert into b values(1,4,4);
[email protected]> insert into b values(2,5,5);
[email protected]> insert into b values(4,6,6);
[email protected]> commit;

[email protected]> select * from a;
       
A          B          C
---------- ---------- ----------
        
1          1          1
        
2          2          2
        
3          3          3

[email protected]> select * from b;

A          D          E
---------- ---------- ----------
        
1          4          4
        
2          5          5
        
4          6          6

2. 内连接
[email protected]> select * from a, b where a.a=b.a;
另外一种写法如下
[email protected]> select * from  a inner join b on a.a=b.a;

A        B          C          A          D          E

-------- ---------- ---------- ---------- ---------- ----------
        
1        1          1          1          4          4
        
2        2          2          2          5          5

3.左外连接
[email protected]> select * from  a,b where a.a=b.a(+);
另外一种写法如下
[email protected]> select *  from  a  left outer join b on a.a=b.a;

A          B          C          A          D          E
---------- ---------- ---------- ---------- ---------- ----------
        
1          1          1          1          4          4
        
2          2          2          2          5          5
        
3          3          3

4.右外连接
[email protected]> select * from  a,b where a.a(+)=b.a;
另外一种写法如下
[email protected]> select * from  a  right outer join b on a.a=b.a;

A          B          C          A          D          E
---------- ---------- ---------- ---------- ---------- ----------
        
1          1          1          1          4          4
        
2          2          2          2          5          5
                                         
                    4          6          6
5.全外连接
[email protected]> select * from  a full outer join b on a.a=b.a;

A          B          C          A          D          E
---------- ---------- ---------- ---------- ---------- ----------
        
1          1          1          1          4          4
        
2          2          2          2          5          5
        
3          3          3
                                         
                    4          6          6

时间: 2024-08-17 09:20:34

oracle sql 内连接 左外连接 右外连接 全外连接的相关文章

数据库左连接、右连接、全联接、左外、右外、全外

内联 SELECT*FROMtemployee employees0INNER JOIN tcustomer customer1 ON ( customer1.id = employees0.id ); 左联 SELECT*FROMtemployee employees0LEFT OUTER JOIN tcustomer customer1 ON ( customer1.id = employees0.id ); 右联 SELECT*FROMtemployee employees0RIGHT O

Oracle SQL 内置函数大全(转)

SQL中的单记录函数 1.ASCII 返回与指定的字符对应的十进制数;SQL> select ascii('A') A,ascii('a') a,ascii('0') zero,ascii(' ') space from dual; A         A      ZERO     SPACE--------- --------- --------- ---------65        97        48        32 2.CHR 给出整数,返回对应的字符;SQL> selec

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关键字, 写成:

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

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

Oracle10gXE和Oracle SQL Developer本地安装配置

第1部分 Oracle10gXE安装 Oracle10gXE安装的安装几乎是一路next就可以安装好:但是中间设置的用户名.密码.口令.SID等信息一定记住,后面需要使用. 第2部分 Oracle SQL Developer Oracle SQL Developer使用的是3.0.04免安装绿色版本,下载解压即可. 第3部分 Oracle SQL Developer连接数据库 1 打开Oracle SQL Developer软件,左上角新建数据库连接, 连接名:随意,只是用来区分而已 用户名:数

深入理解SQL的四种连接-左外连接、右外连接、内连接、全连接(转载)

1.内联接(典型的联接运算,使用像 =  或 <> 之类的比较运算符).包括相等联接和自然联接.     内联接使用比较运算符根据每个表共有的列的值匹配两个表中的行.例如,检索 students和courses表中学生标识号相同的所有行.     2.外联接.外联接可以是左向外联接.右向外联接或完整外部联接.     在 FROM子句中指定外联接时,可以由下列几组关键字中的一组指定:     1)LEFT  JOIN或LEFT OUTER JOIN     左向外联接的结果集包括  LEFT

oracle 内连接 左外连接 右外连接的用法,(+)符号用法

1. 内连接很简单 select A.*, B.* from A,B where A.id = B.id select A.*, B.* from A inner join B on A.id = B.id 以上两句是完全等价的 2. 左外连接 select * from emp a left join dept d on a.deptno=d.deptno select * from emp a,dept d where a.deptno=d.deptno(+) 以上两句是完全等价的 3. 右

【转】深入理解SQL的四种连接-左外连接、右外连接、内连接、全连接

[原文]:http://www.jb51.net/article/39432.htm 1.内联接(典型的联接运算,使用像 =  或 <> 之类的比较运算符).包括相等联接和自然联接.     内联接使用比较运算符根据每个表共有的列的值匹配两个表中的行.例如,检索 students和courses表中学生标识号相同的所有行.       2.外联接.外联接可以是左向外联接.右向外联接或完整外部联接.     在 FROM子句中指定外联接时,可以由下列几组关键字中的一组指定:     1)LEFT