Oracle子查询
子查询
单行子查询(single-row subqueries)
使用的运算符号(=,>,<,>=,<=,<>)
多行子查询(multiple-row subqueries)
使用的运算符号(in,not in,exists,not exits,all,any)
相关子查询(correlated subqueries)
格式 select 列名,(select 语句) from 表名
标量子查询(scalar subqueries)
子查询是返回单行单列,格式同上
多列子查询(multiple-column subqueries)
在DDL语句中使用子查询
在DML语句中使用子查询
--------
单行子查询
--显示工资最高的雇员信息
Select ename,deptno,sal from emp
Where sal=(select max(sal) from emp);
--------
多行子查询
--显示与部门编号为20的岗位相同的雇员信息
Select ename,deptno,sal,job from emp
Where job in (select distinct job from emp where deptno=20);
--显示不与部门编号为20的岗位相同的雇员信息
Select ename,deptno,sal,job from emp where job not in (select distinct job from emp where deptno=20);
--显示高于部门编号为20的所有雇员的工资的雇员信息
select ename,deptno,sal ,job from emp
where sal>all(select sal from emp where deptno=20);
--显示高于部门编号为20的任何雇员的工资的雇员信息
select ename,deptno,sal ,job from emp
where sal>any(select sal from emp where deptno=20);
---------
相关子查询
--显示每个部门的最高工资的雇员信息
select deptno,(select max(sal) from emp b where b.deptno=a.deptno) maxsal
from emp a order by deptno;
--增加distinct
select distinct deptno,(select max(sal) from emp b where b.deptno=a.deptno) maxsal
from emp a order by deptno;
--显示工作在NEW YORK的雇员信息
select ename,deptno,sal,job from emp
where exists (select 'x' from dept where dept.deptno=emp.deptno and dept.loc='NEW YORK');
---------
标量子查询
--返回单行单列
Select count(*) from emp;
Select sum(sal)
相关文档:
表是Oracle数据库最基本对像之一,它存储实际数据,由行和列组成一个二维表。
表和列的命名要求:
1.长度必须在30个字节之内,最短长度不能少1个字节
2.必须是字母开头
3.能包括字母、数值、下划线、货币符号。建议最好不要用货币符号
&n ......
Oracle 视图
视图: 你可以通过创建表的视图来表现数据的逻辑子集或数据的组合.视图是基于表或者另一个
视图的逻辑表,一个视图并不包含它自己的数据,它象一个窗口,通过该窗口可以查看或改变
  ......
ORACLE 函数开发
1、建立函数的语法:
CREATE [OR REPLACE] FUNCTION 函数名
[ (arg1 [mode] datatype[,........])] --当指定参数数据类型时,不能指定其长度。mode值:IN、OUT、IN OUT,当mode 未指定时,表示为IN
RETURN datatype ......
oracle分析函数十分强大,我们只要掌握这些方法,更直接的说法就是知道这些分析函数的作用就能完成很多工作。
下边贴出这些函数,及简单应用。
其中我想对lag()和lead()函数坐下说明:lag()本身是延后的意思也就是延后出现某列的数,而lead()有引领、领先的意思也就是提前几行显示某列数据
RANK()
dense_rank() ......
WinXP 下重新设置 Oracle 管理员密码
Windows 下修改 Oracle 管理员密码操作步骤。此步骤在 WinXP5.1、Oracle92 下操作成功。更改以后需要重启计算机和实例方可生效。
背景:WinXP 版本 5.1(内部版本号 2600.xpsp_sp2_dgr.07022 ......