oracle连接查询有什么用
发表于:2025-01-17 作者:千家信息网编辑
千家信息网最后更新 2025年01月17日,这篇文章主要介绍了oracle连接查询有什么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。连接查询是关系数据库中最主要的查询,主要包
千家信息网最后更新 2025年01月17日oracle连接查询有什么用
这篇文章主要介绍了oracle连接查询有什么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
连接查询是关系数据库中最主要的查询,主要包括内连接、外连接和交叉连接等。通过连接运算符可以实现多个表查询。
一 Equijoins 等值连接
等值连接是条件连接在连接运算符为"="号时的特例。(相对于非等值连接,如:between…and条件)。它是从关系R与S的广义笛卡尔积中选取A,B属性值相等的那些元组。
SQL> select e.employee_id, e.last_name, 2 e.department_id, d.department_id, 3 d.location_id 4 from employees e, departments d 5 where e.department_id = d.department_id;EMPLOYEE_ID LAST_NAME DEPARTMENT_ID DEPARTMENT_ID LOCATION_ID----------- ------------------------- ------------- ------------- ----------- 198 OConnell 50 50 1500 199 Grant 50 50 1500 200 Whalen 10 10 1700 201 Hartstein 20 20 1800......
二 Self joins 自连接
自连接(self join)是SQL语句中经常要用的连接方式,使用自连接可以将自身表的一个镜像当作另一个表来对待,从而能够得到一些特殊的数据。
SELECT e1.last_name||' works for '||e2.last_name "Employees and Their Managers" FROM employees e1, employees e2 WHERE e1.manager_id = e2.employee_id AND e1.last_name LIKE 'R%' ORDER BY e1.last_name;Employees and Their Managers -------------------------------Rajs works for MourgosRaphaely works for KingRogers works for KauflingRussell works for King
三 Cartesian Products 笛卡尔积
如果2个表连接查询而没有连接条件,则oracle返回他们的笛卡尔积。即oracle返回一个表里每一行与另一个表每一行的组合(15 X 4)。
SCOTT@orcl> select count(1) from emp; COUNT(1)---------- 15SCOTT@orcl> select count(1) from dept; COUNT(1)---------- 4SCOTT@orcl> select count(1) from emp, dept; COUNT(1)---------- 60
四 Inner Joins 内连接
内连接也叫简单连接,是2个或更多表的关联并且仅返回那些满足连接条件的行。
select e.employee_id, e.last_name, e.department_id, d.department_id, d.location_idFROM employees e JOIN departments dON e.department_id = d.department_id;
五 Outer joins 外连接
简单连接的扩展。分为左外连接(Left outer joins)、右外连接(Right outer joins)、全外连接(Full outer joins)和Partitioned Outer Joins(分区外连接,用于数据仓库)。
SELECT d.department_id, e.last_name FROM departments d LEFT OUTER JOIN employees e ON d.department_id = e.department_id ORDER BY d.department_id, e.last_name;
另外一种写法:
SELECT d.department_id, e.last_name FROM departments d, employees e WHERE d.department_id = e.department_id(+) ORDER BY d.department_id, e.last_name;
Oracle 官方推荐使用第一种写法。
感谢你能够认真阅读完这篇文章,希望小编分享的"oracle连接查询有什么用"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!
查询
条件
篇文章
数据
笛卡尔
一行
写法
更多
运算符
运算
特殊
仓库
价值
兴趣
同时
多个
官方
属性
广义
数据库
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
软件开发相关论述
北京时代网络技术分类工程
怎么把云服务器变成云桌面
掌握网络安全规范
方舟服务器管理软件
第十五届中国网络安全年会
怎么筛选字符多的数据库
数据库的检索技术练习
手机应用软件开发价格表
省市数据库数据一致性
mysql数据库安全进展
数据库技术发展包括
剑侠情缘3服务器查询
服务器提示你的账户已经停用
山海关网络安全委员
戴尔r730服务器电源多少w
sql数据库清空表指令
网络安全培训活动报道
网络安全渠道工作
法律与网络安全有关
南充孤恒互联网科技有限公司
呱呱阅读软件开发
在idea里面怎么建数据库的表
达芬奇15不能选数据库
艾奥科技互联网医疗
糖豆人需要什么服务器
海康的服务器驱动怎么装
汇丰网络技术有限公司
游聚无法连接服务器
数据库专门关系运算是什么