ORACLE 多表关联查询SQL 语法结构梳理

ORACLE 多表链接查询SQL语法有两种,一种是标准SQL多表联查语句结构(left join | right join ...),一种是ORACLE自身多表联查语句结构(使用"+")

1、标准SQL多表链接查询(以oracle自带emp,dept表为例):

--标准SQL链接语法中左链接查询,是以left join关键字为中心,left join关键字左边的表为基表查询(右关联相反)
select emp.empno,emp.ename,dept.dname,dept.loc from dept left join emp on dept.deptno=emp.deptno  --以dept为基表

--标准SQL链接语法中on后面链接条件即便相反,对查询结果无影响
select emp.empno,emp.ename,dept.dname,dept.loc from emp left join dept on emp.deptno=dept.deptno  --以emp为基表
select emp.empno,emp.ename,dept.dname,dept.loc from emp left join dept on dept.deptno=emp.deptno  --以emp为基表

 

--oracle中自己定义的多表链接语法结构,是以链接条件中(+)在哪边,就以(+)对边表为基本查询,跟from后面表名顺序没关系
SELECT emp.ename,emp.deptno,dept.dname FROM emp,dept WHERE emp.deptno=dept.deptno(+)  --以emp表为基本
SELECT emp.ename,emp.deptno,dept.dname FROM emp,dept WHERE emp.deptno(+)=dept.deptno  --以dept表为基本

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值