Oracle连接总结
本文最后更新于:3 年前
@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连接总结/