select hh.obj#, hh.intcol#, hh.distcnt,
case when SYS_OP_DV_CHECK(o.name, o.owner#) = 1
then case when hh.lowval is null
then hh.lowval
else utl_raw.substr(hh.lowval, 1,
least(UTL_RAW.LENGTH(hh.lowval), 32))
end
else null
end,
case when SYS_OP_DV_CHECK(o.name, o.owner#) = 1
then hh.lowval
else null
end,
case when SYS_OP_DV_CHECK(o.name, o.owner#) = 1
then case when hh.hival is null
then hh.hival
else utl_raw.substr(hh.hival, 1,
least(UTL_RAW.LENGTH(hh.hival), 32))
end
else null
end,
case when SYS_OP_DV_CHECK(o.name, o.owner#) = 1
then hh.hival
else null
end,
hh.density, hh.null_cnt, hh.avgcln,
bitand(hh.spare2, 3), bitand(hh.spare2, 4), hh.sample_size,
case when SYS_OP_DV_CHECK(o.name, o.owner#) = 1
then hh.minimum
else null
end,
case when SYS_OP_DV_CHECK(o.name, o.owner#) = 1
then hh.maximum
else null
end,
hh.spare1,
cast(multiset(select value(hv)
from sys.ku$_histgrm_view hv
where hv.obj_num = hh.obj#
and hv.intcol_num = hh.intcol#)
as ku$_histgrm_list_t)
from sys.obj$ o, sys.hist_head$ hh
where o.obj# = hh.obj#
SELECT HH.OBJ#
, HH.INTCOL#
, HH.DISTCNT
,
CASE WHEN SYS_OP_DV_CHECK(O.NAME
, O.OWNER#) = 1
THEN CASE WHEN HH.LOWVAL IS NULL
THEN HH.LOWVAL
ELSE UTL_RAW.SUBSTR(HH.LOWVAL
, 1
,
LEAST(UTL_RAW.LENGTH(HH.LOWVAL)
, 32))
END
ELSE NULL
END
,
CASE WHEN SYS_OP_DV_CHECK(O.NAME
, O.OWNER#) = 1
THEN HH.LOWVAL
ELSE NULL
END
,
CASE WHEN SYS_OP_DV_CHECK(O.NAME
, O.OWNER#) = 1
THEN CASE WHEN HH.HIVAL IS NULL
THEN HH.HIVAL
ELSE UTL_RAW.SUBSTR(HH.HIVAL
, 1
,
LEAST(UTL_RAW.LENGTH(HH.HIVAL)
, 32))
END
ELSE NULL
END
,
CASE WHEN SYS_OP_DV_CHECK(O.NAME
, O.OWNER#) = 1
THEN HH.HIVAL
ELSE NULL
END
,
HH.DENSITY
, HH.NULL_CNT
, HH.AVGCLN
,
BITAND(HH.SPARE2
, 3)
, BITAND(HH.SPARE2
, 4)
, HH.SAMPLE_SIZE
,
CASE WHEN SYS_OP_DV_CHECK(O.NAME
, O.OWNER#) = 1
THEN HH.MINIMUM
ELSE NULL
END
,
CASE WHEN SYS_OP_DV_CHECK(O.NAME
, O.OWNER#) = 1
THEN HH.MAXIMUM
ELSE NULL
END
,
HH.SPARE1
,
CAST(MULTISET(SELECT VALUE(HV)
FROM SYS.KU$_HISTGRM_VIEW HV
WHERE HV.OBJ_NUM = HH.OBJ#
AND HV.INTCOL_NUM = HH.INTCOL#)
AS KU$_HISTGRM_LIST_T)
FROM SYS.OBJ$ O
, SYS.HIST_HEAD$ HH
WHERE O.OBJ# = HH.OBJ#
|
|
|