select *
from table_name
where 1 = 1 --没有条件可以不写where
connect by parent_id = prior child_id
start with parent_id = 1
向下递归+叶子节点过滤就行了,例子:
--模拟数据
with?tmp(id,pid)?as
(SELECT?'A',''?FROM?DUAL?UNION?ALL
SELECT?'B','A'?FROM?DUAL?UNION?ALL
SELECT?'C','A'?FROM?DUAL?UNION?ALL
SELECT?'D','B'?FROM?DUAL?UNION?ALL
SELECT?'E','B'?FROM?DUAL?UNION?ALL
SELECT?'F','C'?FROM?DUAL?UNION?ALL
SELECT?'G','F'?FROM?DUAL?)
SELECT?ID?FROM?TMP?T
WHERE?CONNECT_BY_ISLEAF=1?--只显示叶子节点
START?WITH?T.ID='A'?--递归起点,即查询条件
CONNECT?BY?PRIOR?ID=PID?--递归条件,向下递归
use tempdb
go
create table #emp
(eid integer not null,
ename varchar(10) not null,
epid integer null,
)
insert into #emp
union all
select * from #emp
;with empcte as
(select epid,(select ename from #emp b where b.eid = a.epid) as name from #emp a where ename = 'me'
select b.epid,(select ename from #emp where eid = b.epid) as name from empcte a join #emp b on a.epid = b.eid
select * from empcte where epid is not null
①系统表
ORACLE数据库的系统参数都存储在数据库中,可以通过SQLPLUS,以用户SYSYTEM进行查询.几个重要的表或者视图如下:
v$controlfile:控制文件的信息;
v$datafile:数据文件的信息;
v$log:日志文件的信息;
v$process:处理器的信息;
v$session:会话信息;
v$transaction:事务信息;
v$resource:资源信息;
v$sga:系统全局区的信息.
上面的视图名中的'v$',只是视图名字中的字符.类似于上面的视图或表还有很多,位于:
$ORACLE_HOME/RDBMS/ADMIN/CATALOG.SQL文件中.
这些视图或表可以在SQLPLUS中用SELECT语句进行查询.
表和列
DBA_TABLES、ALL_TABLES和USER_TABLES显示了有关数据库表的一般信息.
DBA_TAB_COLUMNS、ALL_TAB_COLUMNS和USER_TAB_COLUMNS显示了每个数据库表的列的信息.
注意:DBA_OBJECTS、ALL_OBJECTS和USER_OBJECTS显示了模式对象的信息,包括表.
完整性约束
DBA_CONSTRAINTS、ALL_CONSTRAINTS和USER_CONSTRAINST显示有关约束的一般信息.
DBA_CONS_COLUMNS、ALL_CONS_COLUMNS和USER_CONS_COLUMNS显示有关列的相关约束的一般信息.
视图
DBA_VIEWS、ALL_VIEWS和USER_VIEWS.
注意:DBA_OBJECTS、ALL_OBJECTS和USER_OBJECTS显示了模式对象的信息,包括视图.
序列
DBA_SEQUENCES、ALL_SEQUENCES和USER_SEQUENCES.
注意:DBA_OBJECTS、ALL_OBJECTS和USER_OBJECTS显示了模式对象的信息,包括序列.
同义词
DBA_SYNONYMS、ALL_SYNONYMS和USER_SYNONYMS.
注意:DBA_OBJECTS、ALL_OBJECTS和USER_OBJECTS显示了模式对象的信息,包括同义词.
索引
DBA_INDEXS、ALL_INDEXS、USER_INDEXS、DBA_IND_COLUMNS、ALL_IND_COLUMNS和USER_IND_COLUMNS.
用户
DBA_USERS.
角色
DBA_ROLES.
表空间定额
DBA_TS_QUOTAS.
配置表
DBA_PROFILES.
表空间
DBA_TABLESPACES.
数据文件
DBA_DATA_FILES.
段
DBA_SEGMENTS、USER_SEGMENT.
回滚段
DBA_ROLLBACK_SEGS、V$ROLLNAME、V$ROLLSTAT.
第二道题你参考楼上的就行了
你没有贴表名和结构代码,根据你的贴图,写了如下SQL,希望对你有帮助,如有问题可以追问,
你的表是树级的结构,有上下级关系,查询是比较容易的,用编号和用名称查没本质区别,你在套一层就可以了,
from 表名 a
connect by prior a.parent_id = a.organ_id
查 泰安市 的上级地区应该是 山东
①查看所有用户:
select * from dba_users;
select * from all_users;
select * from user_users;
select * from dba_sys_privs;
select * from user_sys_privs; (查看当前用户所拥有的权限)
sqlselect * from role_sys_privs;
select * from dba_tab_privs;
select * from all_tab_privs;
select * from user_tab_privs;
select * from dba_role_privs;
select * from user_role_privs;
select * from V$PWFILE_USERS
以上就是土嘎嘎小编为大家整理的怎么查下级oracle相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!