Oracle连接总结
本文最后更新于:2 年前
@TOC
结构导图
一、建表SQL语句
1 |
|
二、单表查询!
1.查询test1表
1 |
|
2.查询test2表
1 |
|
3.查询test3表
1 |
|
三、两个表联合查询
1、SQL-92标准方式查询两个表
1)笛卡尔积
如果不加查询条件(where),就会产生笛卡尔积
笛卡尔积:全排列,将A表和B表中的数据一一对应一次,得到一个新的结果集表
特点:结果集表中有符合要求的数据也有垃圾数据
1 |
|
2)等值筛选:有筛选条件
1 |
|
3)非等值筛选
4)自查询
5)外连接查询
2.多表联合查询(重点)–99方式
1)交叉连接(Cross join)
换算两张表的笛卡尔积
1 |
|
2)自然连接(Natural join)
作用:底层自动的按照联合查询的表的所有相同字段名进行等值筛选
注意:
–按照所有的相同字段名进行筛选,联合查询的表中必须存储相同字段名
–进行的是等值筛选
1 |
|
3)内连接(Inner Join/Join)
using关键字
语法:select * from 表名 别名 inner join 表名 别名 using(字段名,字段名....) 作用: --使用指定的相同字段进行联合查询的等值筛选 注意: --联合的表中必须存在using指定的字段
1 |
|
- on关键字
1 |
|
4)自查询
1 |
|
5)外连接查询(outer join)
- 左外连接(left outer join / left join)
1 |
|
- 右外连接(right outer join / right join)
1 |
|
- 全外连接(full outer join / full join)
1 |
|
四、多表联合查询
1.三个表内连接查询
只查询出三个表共有的数据
1 |
|
2.三个表外连接查询
1 |
|
Oracle连接总结
https://chris-z-su.github.io/2022/11/08/数据库/Oracle连接总结/