Oracle中的一连接语句
首先构建场景
相应表中数据如下:
SELECT * FROM EMPLOYEE;

SELECT * FROM DEPTINFO;

连接方式:
1、 ,
SELECT E.EMPNAME, D.DEPNAME
FROM EMPLOYEE E, DEPTINFO D
WHERE E.DEPTID = D.DEPID
ORDER BY DEPNAME;

由此可见“,”连接是将两张表进行等值连接
2、join
SELECT E.EMPNAME, D.DEPNAME
FROM EMPLOYEE E
JOIN DEPTINFO D
ON E.DEPTID = D.DEPID
ORDER BY DEPNAME;

3、inner join
SELECT E.EMPNAME, D.DEPNAME
FROM EMPLOYEE E
INNER JOIN DEPTINFO D
ON E.DEPTID = D.DEPID
ORDER BY DEPNAME;

“,”,join,inner join都是等值连接,所谓等值连接是从关系R与S的广义笛卡尔积中选取A,B属性值相等的那些元组,如上的例子就是从EMPLOYEE和DEPTINFO两张表的公共数据项(DEPTID)相同的那些数据项
4、left join
SELECT E.EMPNAME, D.DEPNAME
FROM EMPLOYEE E
LEFT JOIN DEPTINFO D
ON E.DEPTID = D.DEPID
ORDER BY DEPNAME;

LEFT JOIN是左连接,就是用左表EMPLOYEE去匹配右表DEPTINFO,当找不到相应的数据项的时候就置空。因此这种组合左表中的数据会全部显示,右表中的数据只显示与左表中可以匹配的.上面的查询语句可以理解为,查找每个员工的部门.
5、right join
SELECT E.EMPNAME, D.DEPNAME
FROM EMPLOYEE E
RIGHT JOIN DEPTINFO D
ON E.DEPTID = D.DEPID
ORDER BY DEPNAME;

RIGHR JOIN是右连接,就是用右表DEPTINFO去匹配左表EMPLOYEE,当找不到相应的数据项的时候就置空。因此这种组合右表中的数据会全部显示,左表中的数据只显示与右表中可以匹配的.上面的查询语句可以理解为,查看所有部门的员工分布情况.
Oracle中的一连接语句的更多相关文章
- 对于Oracle中分页排序查询语句执行效率的比较分析
转自:http://bbs.csdn.net/topics/370033478 对于Oracle中分页排序查询语句执行效率的比较分析 作者:lzgame 在工作中我们经常遇到需要在Oracle中进行分 ...
- Oracle中,利用sql语句中的函数实现保留两位小数和四舍五入保留两位小数
Oracle中,利用sql语句中的函数实现保留两位小数和四舍五入保留两位小数: select trunc(1.23856789,2) from dual round(m,n) 可以四舍五入 trunc ...
- oracle中的内连接和外连接区别
表t_user1,t_user2,t_user3,各有id,name两列 id name 1 10A 2 20A id name 1 10B 3 30B id name 1 10C 4 40C 连接分 ...
- Oracle中的一些查询语句及其执行顺序
查询条件: 1)LIKE:模糊查询,需要借助两个通配符,%:表示0到多个字符:_:标识单个字符. 2)IN(list):用来取出符合列表范围中的数据. 3)NOT IN(list): 取出不符合此列表 ...
- Oracle中exists替代in语句
大家都知道exists的速度要比in的速度快,也知道exists函数返回一个布尔值,也就是说exists函数里最后要是 a.id =b.id类似这种方式结束. 例如: SELECT * FROM TB ...
- 常用oracle中系统表查询语句
sqlplus / as sysdbaSQL>select status from v$instance;1.查看最大连接数show parameter processes;2.查询oracle ...
- 检查Oracle 中死事务的语句
SQL> SELECT KTUXEUSN, KTUXESLT, KTUXESQN, /* Transaction ID */ 2 KTUXESTA Status, KTUXECFL Flags ...
- ORACLE中查询语句的执行顺及where部分条件执行顺序测试
Oracle中的一些查询语句及其执行顺序 原文地址:https://www.cnblogs.com/likeju/p/5039115.html 查询条件: 1)LIKE:模糊查询,需要借助两个通配符, ...
- Oracle中如何插入特殊字符:& 和 ' (多种解决方案)
今天在导入一批数据到Oracle时,碰到了一个问题:Toad提示要给一个自定义变量AMP赋值,一开始我很纳闷,数据是一系列的Insert语句,怎么会有自定义变量呢?后来搜索了一下关键字AMP发现,原来 ...
随机推荐
- Rsync+sersync实现实时同步
介绍: sersync主要用于服务器同步,web镜像等功能.基于boost1.43.0,inotify api,rsync command.开发.目前使用的比较多的同步解决方案是inotify-too ...
- Ubuntu屏幕录制工具【转】
本文转载自:https://blog.csdn.net/Draonly/article/details/74898031 原文参考:https://www.sysgeek.cn/simplescree ...
- The current .NET SDK does not support targeting .NET Core 3.0
编译错误 Severity Code Description Project File Line Suppression StateError NETSDK1045 The current .NET ...
- UVa 10491 奶牛和轿车(全概率公式)
https://vjudge.net/problem/UVA-10491 题意: 假设有a头牛,b辆车,在最终选择前主持人会替你打开c个有牛的门,输出"总是换门"的策略下,赢得车的 ...
- POJ 1142 Smith Numbers(分治法+质因数分解)
http://poj.org/problem?id=1142 题意: 给出一个数n,求大于n的最小数,它满足各位数相加等于该数分解质因数的各位相加. 思路:直接暴力. #include <ios ...
- spring boot2 基于百度云apiface实现人脸检测与认证2
接上一篇,上篇只实现了人脸的认证,接下来实现人脸的检测. 原理介绍: 把摄像头抓拍的图像上传到服务器,服务器把图像上传到百度云,百度云返回识别出的人脸的数量和位置,前端根据服务端的返回,在图像中画出人 ...
- PostgreSql 其它客户端连接
在 PATH_TO_YOUR_PostGreSQL/data/pg_hba.conf 加上红色那行,重启postgre的service就能让其它人连你的数据库了. host all all 127.0 ...
- 使用 for 循环
for 循环通过迭代一个给定向量或列表,重复执行某个表达式.for 循环的语法是这样的:for (var in vector) {expr}var 遍历 vector 中的各个元素值,expr 被反复 ...
- postgresql中终止正在执行的SQL语句
在Linux系统中可以使用kill [pid]的方式强制删除进程,但对于修改数据表的语句来说,这样可能导致postgresql进入recovery mode,这样会导致锁表. Postgresql的运 ...
- 3个方法实现JavaScript判断移动端及pc端访问不同的网站
3个方法比较简单,分别在页面头部加入如下js代码: 对于简单地直接从www.maslinkcom跳转到m.maslink.com,此方法仅从首页而言: <script>(function ...