SELECT /*+ORDERED*/
u.username owner
, d.name dimension_name
, h.hiername hierarchy_name
, pdl.levelname parent_level_name
, cdl.levelname child_level_name
, chl.pos# position
FROM
dba_users u
, sys.obj$ d
, sys.hier$ h
, sys.hierlevel$ phl
, sys.hierlevel$ chl
, sys.dimlevel$ pdl
, sys.dimlevel$ cdl
WHERE u.user_id = d.owner#
AND d.type# = 43 /* DIMENSION */
AND ( cwm$util.dimension_tables_visible(d.obj#) = 'Y'
OR EXISTS /* SELECT ANY TABLE, CREATE, ALTER, DROP ANY DIMENSION */
(SELECT null FROM v$enabledprivs
WHERE priv_number IN (-47,-215,-216,-217)))
AND d.obj# = h.dimobj#
AND d.obj# = phl.dimobj#
AND h.hierid# = phl.hierid#
AND d.obj# = pdl.dimobj#
AND phl.levelid# = pdl.levelid#
AND d.obj# = chl.dimobj#
AND h.hierid# = chl.hierid#
AND chl.levelid# = cdl.levelid#
AND d.obj# = cdl.dimobj#
AND phl.pos# = chl.pos# + 1
WITH READ ONLY
SELECT /*+ORDERED*/
U.USERNAME OWNER
, D.NAME DIMENSION_NAME
, H.HIERNAME HIERARCHY_NAME
, PDL.LEVELNAME PARENT_LEVEL_NAME
, CDL.LEVELNAME CHILD_LEVEL_NAME
, CHL.POS# POSITION
FROM
DBA_USERS U
, SYS.OBJ$ D
, SYS.HIER$ H
, SYS.HIERLEVEL$ PHL
, SYS.HIERLEVEL$ CHL
, SYS.DIMLEVEL$ PDL
, SYS.DIMLEVEL$ CDL
WHERE U.USER_ID = D.OWNER#
AND D.TYPE# = 43 /* DIMENSION */
AND ( CWM$UTIL.DIMENSION_TABLES_VISIBLE(D.OBJ#) = 'Y'
OR EXISTS /* SELECT ANY TABLE
, CREATE
, ALTER
, DROP ANY DIMENSION */
(SELECT NULL
FROM V$ENABLEDPRIVS
WHERE PRIV_NUMBER IN (-47
, -215
, -216
, -217)))
AND D.OBJ# = H.DIMOBJ#
AND D.OBJ# = PHL.DIMOBJ#
AND H.HIERID# = PHL.HIERID#
AND D.OBJ# = PDL.DIMOBJ#
AND PHL.LEVELID# = PDL.LEVELID#
AND D.OBJ# = CHL.DIMOBJ#
AND H.HIERID# = CHL.HIERID#
AND CHL.LEVELID# = CDL.LEVELID#
AND D.OBJ# = CDL.DIMOBJ#
AND PHL.POS# = CHL.POS# + 1
WITH READ ONLY
|
|
|