SELECT b.TARGET_NAME,
c.HOST_NAME,
MAX(b.VALUE),
MIN(b.value),
MAX(b.MONTH_timestamp),
MIN(b.MONTH_timestamp),
ROUND((MAX(b.VALUE) - MIN(b.value)), 1) Diff,
ROUND(((ROUND((MAX(b.VALUE) - MIN(b.VALUE)), 2) * 100) / (MIN(b.VALUE))), 0) Per,
(SELECT '%'
FROM dual) "%"
FROM
(SELECT a.TARGET_NAME,
a.METRIC_COLUMN,
a.MONTH_timestamp,
AVG(a.VALUE) Value
FROM
(SELECT DISTINCT m.TARGET_NAME,
m.metric_column AS metric_column,
TO_CHAR(m.rollup_timestamp, 'YYYY-MM') AS month_timestamp,
SUM(m.average / 1024) AS value
FROM mgmt$metric_daily m,
mgmt$target_type t
WHERE (t.target_type = 'rac_database'
OR t.target_type = 'oracle_pdb'
OR (t.target_type = 'oracle_database'
AND t.TYPE_QUALIFIER3 != 'RACINST'))
AND m.target_guid = t.target_guid
AND m.metric_guid = t.metric_guid
AND (t.metric_name = 'tbspAllocation')
AND (t.metric_column = 'spaceAllocated')
AND m.rollup_timestamp > sysdate - 360
GROUP BY m.rollup_timestamp,
m.TARGET_NAME,
m.metric_column,
m.rollup_timestamp
ORDER BY 3) a
GROUP BY a.MONTH_timestamp,
a.TARGET_NAME,
a.METRIC_COLUMN
ORDER BY 3) b,
(SELECT HOST_NAME,
TARGET_NAME
FROM MGMT$DB_DATAFILES) c
WHERE b.TARGET_NAME = c.TARGET_NAME
GROUP BY b.TARGET_NAME,
c.HOST_NAME;
c.HOST_NAME,
MAX(b.VALUE),
MIN(b.value),
MAX(b.MONTH_timestamp),
MIN(b.MONTH_timestamp),
ROUND((MAX(b.VALUE) - MIN(b.value)), 1) Diff,
ROUND(((ROUND((MAX(b.VALUE) - MIN(b.VALUE)), 2) * 100) / (MIN(b.VALUE))), 0) Per,
(SELECT '%'
FROM dual) "%"
FROM
(SELECT a.TARGET_NAME,
a.METRIC_COLUMN,
a.MONTH_timestamp,
AVG(a.VALUE) Value
FROM
(SELECT DISTINCT m.TARGET_NAME,
m.metric_column AS metric_column,
TO_CHAR(m.rollup_timestamp, 'YYYY-MM') AS month_timestamp,
SUM(m.average / 1024) AS value
FROM mgmt$metric_daily m,
mgmt$target_type t
WHERE (t.target_type = 'rac_database'
OR t.target_type = 'oracle_pdb'
OR (t.target_type = 'oracle_database'
AND t.TYPE_QUALIFIER3 != 'RACINST'))
AND m.target_guid = t.target_guid
AND m.metric_guid = t.metric_guid
AND (t.metric_name = 'tbspAllocation')
AND (t.metric_column = 'spaceAllocated')
AND m.rollup_timestamp > sysdate - 360
GROUP BY m.rollup_timestamp,
m.TARGET_NAME,
m.metric_column,
m.rollup_timestamp
ORDER BY 3) a
GROUP BY a.MONTH_timestamp,
a.TARGET_NAME,
a.METRIC_COLUMN
ORDER BY 3) b,
(SELECT HOST_NAME,
TARGET_NAME
FROM MGMT$DB_DATAFILES) c
WHERE b.TARGET_NAME = c.TARGET_NAME
GROUP BY b.TARGET_NAME,
c.HOST_NAME;
Comments
Post a Comment