oracle树中prior的用法
数据说明一切:
create table dept(deptno number,deptname varchar2(20),mgrno number);
insert into dept values (1, '总公司', null);
insert into dept values (2, '浙江分公司', 1);
insert into dept values (3, '杭州分公司', 2);
commit;
select t.* from dept t;
DEPTNO DEPTNAME MGRNO
1 1 总公司
2 2 浙江分公司 1
3 3 杭州分公司 2
select * from dept connect by prior mgrno=deptno ; --以子结点为开始向根结点遍历
DEPTNO DEPTNAME MGRNO
1 1 总公司
2 2 浙江分公司 1
3 1 总公司
4 3 杭州分公司 2
5 2 浙江分公司 1
6 1 总公司
select * from dept start with mgrno=1 connect by prior mgrno=deptno ---以子结点为开始且开始为1,的遍历
DEPTNO DEPTNAME MGRNO
1 2 浙江分公司 1
2 1 总公司
-------------------------------------------------------------------------------------------------------------
select from dept connect by prior deptno= mgrno
DEPTNO DEPTNAME MGRNO
1 2 浙江分公司 1
2 3 杭州分公司 2
3 3 杭州分公司 2
4&nbs
相关文档:
Oracle数据导入导出imp/exp就相当于oracle数据还原与备份。exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命 令可以把dmp文件从本地导入到远处的数据库服务器中。 利用这个功能可以构建两个相同的数据库,一个用来测试,一个用来正式使用。
执行环境:可以在SQLPLUS.EXE或者DOS(命令行)中执行,
......
在一般Select语句中我们通过Order by ...Asc/Desc来进行排序。但是这种排序方式在输出时,不包含排序后的序号信息。
现在介绍一下Oracle中可以用于排序输出的方法。
1. RANK ( ) OVER ( [query_partition_clause] order_by_clause )
RANK ( ) OVER ( [query_p ......
select f.tablespace_name,a.total,u.used,f.free,round((u.used/a.total)*100) "% used", round((f.free/a.total)*100) "% Free"
from
(select tablespace_name, sum(bytes/(1024*1024)) total
from dba_data_files group by tablespace_name) a,
(select tabl ......
ORACLE中字段的数据类型
字符型 char 范围 最大2000个字节 定长
char(10) '张三' 后添空格6个把10个字节补满 '张三 &nb ......