各位同行:TABLE: tdM328ORG_CD ORG_LEVEL UPPER_ORG_CD
--------------------------------
LLJ 4 wy01
TWG 4 BYM
wy01 3 LYG
BYM 3 LLJ01
LLJ0 2 XXX
LYG 2 XXX
LYG1 2 XXX
XXX 1 (NULL)我用下面的SQL查:
SELECT
lpad(org_cd,level*2+length(org_cd),' ')
From tdM328
connect by prior org_cd = upper_org_cd
start with upper_org_cd is null
结果:
XXX
LLJ01
BYM
TWG
LYG
wy01
LLJ
LYG1
这没有问题,现在我想查“LLJ”的一个树,即想得到结果:
XXX
LYG
wy01
LLJORG_CD = 'LLJ' 这个条件往哪儿加?谢了!
--------------------------------
LLJ 4 wy01
TWG 4 BYM
wy01 3 LYG
BYM 3 LLJ01
LLJ0 2 XXX
LYG 2 XXX
LYG1 2 XXX
XXX 1 (NULL)我用下面的SQL查:
SELECT
lpad(org_cd,level*2+length(org_cd),' ')
From tdM328
connect by prior org_cd = upper_org_cd
start with upper_org_cd is null
结果:
XXX
LLJ01
BYM
TWG
LYG
wy01
LLJ
LYG1
这没有问题,现在我想查“LLJ”的一个树,即想得到结果:
XXX
LYG
wy01
LLJORG_CD = 'LLJ' 这个条件往哪儿加?谢了!
解决方案 »
- 那位大神能介绍下DB_FILE_NAME_CONVERT和LOG_FILE_NAME_CONVERT的用途
- Oracle数据库创建表空间问题
- 数据库服务器经常出现CPU占用率100%的情况,联入数据库的有40多个用户,主要在运行数据量比较大的报表时出现这个现象,怎么优化报表程序都难以改善
- 想去ORACLE 官方文档里查找EMCA的语法,找不见位置
- 为什么加上group by 速度变慢,一致停在那!
- 如何挪数据?
- 为什么这个SQL语句无法执行
- 在线等=====初学着=====oracle中的表有没有像sqlserver下标识一个字段为自动递增啊?
- oracle安装
- 请各位高手帮忙
- 在线求一查询语句?很急
- oracle 能不能做这样的功能?(急)
lpad(org_cd,level*2+length(org_cd),' ')
From tdM328
connect by prior org_cd = upper_org_cd and prior ORG_CD = 'LLJ'
start with upper_org_cd is null
lpad(org_cd,(4-level)*2+length(org_cd),' ')
From tdM328
connect by prior upper_org_cd = org_cd
start with ORG_CD = 'LLJ'
order by level desc;其中LPAD语句中(4-level)的中的"4"应该是最大层数,但如果写在同一句SQL中显得太过复杂,
所以在前面再写一句SQL,这样显得清晰一些.SELECT
max(level)
From tdM328
connect by prior upper_org_cd = org_cd
start with ORG_CD = 'LLJ' ;