Dept表
名称 是否为空? 类型
----------------- -------- ------------
DEPTNO NUMBER(2)
DNAME VARCHAR2(14)
LOC VARCHAR2(13)
salgrade表
名称 是否为空? 类型
----------------- -------- ------------
GRADE NUMBER
LOSAL NUMBER
HISAL NUMBER
多表查询
多表链接 首先做到的是笛卡尔乘积
A表
a1 a2 a3
b1 b2 b3
c1 c2 c3
B
d1 d2
f1 f2
结果
a1 a2 a3 d1 d2
b1 b2 b3 d1 d2
c1 c2 c3 d1 d2
a1 a2 a3 f1 f2
b1 b2 b3 f1 f2
c1 c2 c3 f1 f2
结果分析:
获得的行数:A*B
获得的列数:A+B
--------------------------------------------------------------
两个表合成一个表 中间加个条件
emp,dept 相连
emp.sal>salgrade.losal and emp.sal<salgrade.hisal(between losal and hisal)
emp,dept,salgrade三表相连
select * from emp,dept,salgrade where emp.deptno=dept.deptno and (emp.sal>salgrade.losal and
emp.sal<salgrade.hisal)
其他函数
控制替换 nvl(comm.0);
例:sal 和 comm 的和 如果之间有空值 直接加的话 空值依然是空值
select nvl(sal,0)+nvl(comm,0) from emp;把空值替换成0 在进行计算
如果想找管理者的话 需要关联 另一张表 所以就创建一张表
select emp.empno,manager.mgr from emp,manager where emp.empno=manager.mgr
这里我们可以用别名 从而访问同一张表(别名的意思 也就是虚拟一张自己)
select e.empno,m.mgr from emp e.manager m where e.empno=m.mgr;
练习:查询 和 allen 在同一个工资级别的员工信息;
select * from emp,salgrade where sal between losal and hisal and grade=(select grade from emp,salgrade where sal between losal and hisal and ename='ALLEN')
---------------------------------------------------------------------------------------------------------------------
多表查询
多表连接首先做的是笛卡尔乘积
A
a1 a2 a3
b1 b2 b3
c1 c2 c3
B
d1 d2
f1 f2
C
g1 g1
h1 h2
结果
a1 a2 a3 d1 d2 g1 g1
b1 b2 b3 d1 d2 g1 g1
c1 c2 c3 d1 d2 g1 g1
a1 a2 a3 f1 f2 g1 g1
b1 b2 b3 f1 f2 g1 g1
c1 c2 c3 f1 f2 g1 g1
a1 a2 a3 d1 d2 h1 h2
b1 b2 b3 d1 d2 h1 h2
c1 c2 c3 d1 d2 h1 h2
a1 a2 a3 f1 f2 h1 h2
b1 b2 b3 f1 f2 h1 h2
c1 c2 c3 f1 f2 h1 h2
结果分析:
获得的行数:A*B*C
获得的列数:A+B+C
多表连接类型
等值连接
非等值连接
自连接 --自己连接自己 在使用自连接时必须使用表别名
nvl函数
表别名
子查询:查询的语句中还包含查询,内部的查询就是子查询
使用子查询:当要查询一个复杂内容 通过一个简单的查询无法实现,这时使用子查询
在使用子查询时
根据返回的值的不同使用的符号也不同
当返回一个值的时候使用 = > < >= <=
当返回一列值时使用 in any all any 和all在使用时必须和基本符号一起使用
>any <any =any >=any >=all
分享到:
相关推荐
从给定的文件信息来看,这是一系列关于Oracle 9i DBA Fundamentals I的教程视频,由小布老师提供。这些视频被分成了多个部分,每个部分包含了一个rar压缩包,通过ed2k链接进行下载。下面,我们将对Oracle 9i DBA ...
这个"oracle认证老师的oracle课件"涵盖了SQL(结构化查询语言)和PL/SQL(过程化SQL)两大核心部分,这些都是Oracle数据库管理与开发的基础。 SQL是用于管理关系数据库的标准语言,包括数据查询、数据更新、数据...
在"小布老师oracle第一集"中,我们可能首先会接触到Oracle数据库的基础概念,包括数据库、表空间、数据块等核心元素。数据库是存储和管理数据的逻辑结构,它由一系列的表、视图、索引等组成。表空间则是Oracle存储...
### 韩顺平老师Oracle视频教程听课笔记知识点解析 #### 一、Oracle认证与数据库安装及用户管理 ##### 1. Oracle安装基础 - **安装过程**:Oracle的安装过程中会自动生成两个预设用户——`sys`和`system`用户。 -...
《周炯老师Oracle课件》是一份针对OCP(Oracle Certified Professional)考试的详细学习资料,涵盖了Oracle数据库的基础知识和核心技能。以下是根据压缩包文件名解析出的主要知识点: 1. **Oracle数据库架构(Less...
《甲骨论相克军老师Oracle 45集配套文档》是针对甲骨论2012年相克军老师讲解的Oracle视频课程所编写的配套资料,旨在帮助学习者深入理解和掌握Oracle数据库系统的核心知识。Oracle数据库是全球广泛使用的大型关系型...
小布老师Oracle.9i.DBA.Fundamentals1教学总结
"Oracle培训18天老师笔记"很可能是一个详尽的教程,涵盖了从基础到进阶的Oracle知识,适合对数据库有兴趣或者希望获得Oracle OCP(Oracle Certified Professional)认证的学习者。以下是对可能包含在这些笔记中的...
盖国强老师是中国知名的Oracle专家,他的深入解析Oracle的手稿无疑是学习和理解Oracle数据库技术的重要参考资料。 盖老师的Oracle手稿可能涵盖了多个关键知识点,包括但不限于以下内容: 1. **Oracle体系结构**:...
小布老师oracle材料,第一部分小布老师oracle材料,第一部分 小布老师oracle材料,第二部分 小布老师oracle材料,第二部分
第1课 轻松带你走进Oracle数据库的世界 第2课 从最简单的SQL语句开始 第3课 Oracle数据库的安装和配置 第4课 Oracle数据库的参数文件,控制文件,数据文件和日志文件 第5课 Oracle体系架构简述 第6课 Oracle...
"Oracle培训老师笔记"是一份非常宝贵的资源,它包含了Oracle数据库的学习精华,旨在帮助Oracle爱好者、学习者和开发者快速深入理解并熟练掌握Oracle的核心概念和技术。 笔记首先可能会介绍Oracle的基本架构,包括...
赵强老师在传智播客的Oracle课程是专为IT专业人士和对数据库技术感兴趣的学员设计的一系列教学资料,旨在深入浅出地讲解Oracle的核心概念、功能以及实际操作技巧。 在赵强老师的课程中,你可以学到以下几个重要的...
这份"Oracle老师教学笔记"提供了一条从零基础到进阶掌握Oracle数据库的学习路径。笔记内容可能涵盖了数据库的基础概念、安装配置、SQL语言、表的创建、数据查询以及更深入的数据库管理技巧。 1. **数据库基础**:...
李新华老师的Oracle高清教程旨在为初学者提供一个系统、易懂的学习平台,帮助他们快速掌握Oracle数据库的基础知识和操作技能。 教程中可能涵盖以下几个核心知识点: 1. **Oracle简介**:介绍Oracle的历史、版本...
《魔乐科技 李兴华老师Oracle PDF》是一份由知名IT教育机构魔乐科技的李兴华老师编写的Oracle数据库学习资料集。这套资料包含了7个PDF文件,旨在为学习者提供全面、深入的Oracle知识,是Oracle初学者和进阶者的宝贵...
第八课 Data Gaurd 故障分析和处理 第九课 RAC+DG技术的应用 第十课 Oracle Golden gate 概念和机制 第十一课 Oracle Golden gate 设计及应用 第十二课 Oracle 流技术(streams) 第十三课 Oracle...
教程名称:Oracle培训视频(杨老师录制)课程目录:【】视频10:oracle备份恢复一【】视频11:oracle备份恢复二【】视频12:共享池结构1【】视频13:共享池之sql重用【】视频14:共享池之绑定变量【】视频15:共享池...