Home » SQL & PL/SQL » SQL & PL/SQL » Correct order of data in Hierarchical Query (Oracle 12c)
Correct order of data in Hierarchical Query [message #657730] |
Sat, 19 November 2016 16:34 |
ramjss
Messages: 10 Registered: May 2009 Location: delhi
|
Junior Member |
|
|
Dear All,
I've created a hierarchical script for a tree .I've achieved the desired result but the data is not being in correct order sorted at 2nd level.
I've 2 tables (1) FUNKTION_STATUS and (2) DIM_PROZESS_CONFIG .
Tables structure and data in the table are attached in this message.
I've executed the below script based on the data provided::
WITH TREE AS (
SELECT PROZESS_CONFIG_ID , STATUS, START_DATE, END_DATE
FROM FUNKTION_STATUS
),
TREE1 (PROZESS_CONFIG_ID,PARENT) AS (
SELECT PROZESS_CONFIG_ID ,PARENT
FROM DIM_PROZESS_CONFIG
),
DATA AS (
SELECT T1.*, T.STATUS, T.START_DATE, T.END_DATE
FROM TREE1 T1
LEFT JOIN TREE T ON T.PROZESS_CONFIG_ID = T1.PROZESS_CONFIG_ID
),
DATA_WITH_LEAF AS (
SELECT D.*, CONNECT_BY_ISLEAF IS_LEAF, ROWNUM RN, SYS_CONNECT_BY_PATH(PROZESS_CONFIG_ID, '/') PATH, LEVEL LVL
FROM DATA D
START WITH PARENT IS NULL
CONNECT BY PARENT = PRIOR PROZESS_CONFIG_ID
),
RES_TREE(PROZESS_CONFIG_ID, PARENT, STATUS, RN, START_DATE, END_DATE, PATH, LVL) AS (
SELECT PROZESS_CONFIG_ID, PARENT, STATUS, RN, START_DATE, END_DATE, PATH, LVL
FROM DATA_WITH_LEAF T
WHERE IS_LEAF = 1
UNION ALL
SELECT D.PROZESS_CONFIG_ID, D.PARENT, CASE WHEN T.STATUS = 'FAILED' THEN T.STATUS ELSE NVL(D.STATUS, T.STATUS) END, D.RN,
NVL(D.START_DATE, T.START_DATE),
NVL(D.END_DATE, T.END_DATE),
D.PATH, D.LVL
FROM DATA_WITH_LEAF D
JOIN RES_TREE T ON T.PARENT = D.PROZESS_CONFIG_ID
)
SELECT PROZESS_CONFIG_ID, PARENT, MIN(STATUS) AS STATUS,
MIN(TO_CHAR(START_DATE, 'DD-MM-YYYY HH24:MI:SS' )) AS START_DATE, MAX(TO_CHAR(END_DATE,'DD-MM-YYYY HH24:MI:SS')) AS END_DATE,
PATH, LVL
FROM RES_TREE
GROUP BY PROZESS_CONFIG_ID, PARENT, RN, PATH, LVL
ORDER BY RN
###############
Output of the data at 2nd level is not being sorted not in the order in which order it was started. I know that why it is not being sorted in correct order by when I was doing to correct it ,the script goes in infinite loop.
For prozess_config_id CAPM#STAGE,CAPM#CORE and CAPM#CORE it should be in the same order as I mentioned but in my output in is coming in order as
1::CAPM#CORE
2::CAPM#MART
3::CAPM#STAGE
So please guide me.
OUTPUT as below::
#########################
#########################
PROZESS_CONFIG_ID PARENT STATUS START_DATE END_DATE PATH LVL
CAPM FAIL 19-10-2016 17:00:03 19-10-2016 20:41:00 /CAPM 1
CAPM#CORE CAPM FAIL 19-10-2016 18:05:03 19-10-2016 20:05:00 /CAPM/CAPM#CORE 2
CAPM#CORE#ODI_PKG_11 CAPM#CORE FAIL 19-10-2016 18:05:03 19-10-2016 19:05:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_11 3
CAPM#CORE#ODI_PKG_11#ODI_PKG_04 CAPM#CORE#ODI_PKG_11 SUCCESSFUL 19-10-2016 18:05:03 19-10-2016 18:35:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_11/CAPM#CORE#ODI_PKG_11#ODI_PKG_04 4
CAPM#CORE#ODI_PKG_11#ODI_PKG_04#MAP_11 CAPM#CORE#ODI_PKG_11#ODI_PKG_04 SUCCESSFUL 19-10-2016 18:05:03 19-10-2016 18:10:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_11/CAPM#CORE#ODI_PKG_11#ODI_PKG_04/CAPM#CORE#ODI_PKG_11#ODI_PKG_04#MAP_11 5
CAPM#CORE#ODI_PKG_11#ODI_PKG_04#MAP_14 CAPM#CORE#ODI_PKG_11#ODI_PKG_04 SUCCESSFUL 19-10-2016 18:10:01 19-10-2016 18:15:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_11/CAPM#CORE#ODI_PKG_11#ODI_PKG_04/CAPM#CORE#ODI_PKG_11#ODI_PKG_04#MAP_14 5
CAPM#CORE#ODI_PKG_11#ODI_PKG_04#MAP_17 CAPM#CORE#ODI_PKG_11#ODI_PKG_04 SUCCESSFUL 19-10-2016 18:15:01 19-10-2016 18:20:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_11/CAPM#CORE#ODI_PKG_11#ODI_PKG_04/CAPM#CORE#ODI_PKG_11#ODI_PKG_04#MAP_17 5
CAPM#CORE#ODI_PKG_11#ODI_PKG_04#MAP_20 CAPM#CORE#ODI_PKG_11#ODI_PKG_04 SUCCESSFUL 19-10-2016 18:20:00 19-10-2016 18:25:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_11/CAPM#CORE#ODI_PKG_11#ODI_PKG_04/CAPM#CORE#ODI_PKG_11#ODI_PKG_04#MAP_20 5
CAPM#CORE#ODI_PKG_11#ODI_PKG_04#MAP_23 CAPM#CORE#ODI_PKG_11#ODI_PKG_04 SUCCESSFUL 19-10-2016 18:25:01 19-10-2016 18:30:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_11/CAPM#CORE#ODI_PKG_11#ODI_PKG_04/CAPM#CORE#ODI_PKG_11#ODI_PKG_04#MAP_23 5
CAPM#CORE#ODI_PKG_11#ODI_PKG_04#MAP_24 CAPM#CORE#ODI_PKG_11#ODI_PKG_04 SUCCESSFUL 19-10-2016 18:30:01 19-10-2016 18:35:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_11/CAPM#CORE#ODI_PKG_11#ODI_PKG_04/CAPM#CORE#ODI_PKG_11#ODI_PKG_04#MAP_24 5
CAPM#CORE#ODI_PKG_11#ODI_PKG_08 CAPM#CORE#ODI_PKG_11 SUCCESSFUL 19-10-2016 18:05:03 19-10-2016 18:37:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_11/CAPM#CORE#ODI_PKG_11#ODI_PKG_08 4
CAPM#CORE#ODI_PKG_11#ODI_PKG_08#MAP_13 CAPM#CORE#ODI_PKG_11#ODI_PKG_08 SUCCESSFUL 19-10-2016 18:05:03 19-10-2016 18:13:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_11/CAPM#CORE#ODI_PKG_11#ODI_PKG_08/CAPM#CORE#ODI_PKG_11#ODI_PKG_08#MAP_13 5
CAPM#CORE#ODI_PKG_11#ODI_PKG_08#MAP_16 CAPM#CORE#ODI_PKG_11#ODI_PKG_08 SUCCESSFUL 19-10-2016 18:13:01 19-10-2016 18:21:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_11/CAPM#CORE#ODI_PKG_11#ODI_PKG_08/CAPM#CORE#ODI_PKG_11#ODI_PKG_08#MAP_16 5
CAPM#CORE#ODI_PKG_11#ODI_PKG_08#MAP_19 CAPM#CORE#ODI_PKG_11#ODI_PKG_08 SUCCESSFUL 19-10-2016 18:21:01 19-10-2016 18:29:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_11/CAPM#CORE#ODI_PKG_11#ODI_PKG_08/CAPM#CORE#ODI_PKG_11#ODI_PKG_08#MAP_19 5
CAPM#CORE#ODI_PKG_11#ODI_PKG_08#MAP_22 CAPM#CORE#ODI_PKG_11#ODI_PKG_08 SUCCESSFUL 19-10-2016 18:29:01 19-10-2016 18:37:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_11/CAPM#CORE#ODI_PKG_11#ODI_PKG_08/CAPM#CORE#ODI_PKG_11#ODI_PKG_08#MAP_22 5
CAPM#CORE#ODI_PKG_11#ODI_PKG_10 CAPM#CORE#ODI_PKG_11 FAIL 19-10-2016 18:05:03 19-10-2016 19:05:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_11/CAPM#CORE#ODI_PKG_11#ODI_PKG_10 4
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_05 CAPM#CORE#ODI_PKG_11#ODI_PKG_10 SUCCESSFUL 19-10-2016 18:05:03 19-10-2016 18:33:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_11/CAPM#CORE#ODI_PKG_11#ODI_PKG_10/CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_05 5
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_05#MAP_12 CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_05 SUCCESSFUL 19-10-2016 18:05:03 19-10-2016 18:12:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_11/CAPM#CORE#ODI_PKG_11#ODI_PKG_10/CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_05/CAPM#CORE#ODI_PKG_11# ODI_PKG_10#ODI_PKG_05#MAP_12 6
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_05#MAP_15 CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_05 SUCCESSFUL 19-10-2016 18:12:01 19-10-2016 18:19:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_11/CAPM#CORE#ODI_PKG_11#ODI_PKG_10/CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_05/CAPM#CORE#ODI_PKG_11# ODI_PKG_10#ODI_PKG_05#MAP_15 6
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_05#MAP_18 CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_05 SUCCESSFUL 19-10-2016 18:19:01 19-10-2016 18:26:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_11/CAPM#CORE#ODI_PKG_11#ODI_PKG_10/CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_05/CAPM#CORE#ODI_PKG_11# ODI_PKG_10#ODI_PKG_05#MAP_18 6
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_05#MAP_21 CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_05 SUCCESSFUL 19-10-2016 18:26:01 19-10-2016 18:33:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_11/CAPM#CORE#ODI_PKG_11#ODI_PKG_10/CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_05/CAPM#CORE#ODI_PKG_11# ODI_PKG_10#ODI_PKG_05#MAP_21 6
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09 CAPM#CORE#ODI_PKG_11#ODI_PKG_10 FAIL 19-10-2016 18:33:01 19-10-2016 19:05:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_11/CAPM#CORE#ODI_PKG_11#ODI_PKG_10/CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09 5
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_06 CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09 FAIL 19-10-2016 18:33:01 19-10-2016 19:01:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_11/CAPM#CORE#ODI_PKG_11#ODI_PKG_10/CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09/CAPM#CORE#ODI_PKG_11# ODI_PKG_10#ODI_PKG_09#ODI_PKG_06 6
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_06#MAP_25 CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_06 SUCCESSFUL 19-10-2016 18:33:01 19-10-2016 18:40:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_11/CAPM#CORE#ODI_PKG_11#ODI_PKG_10/CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09/CAPM#CORE#ODI_PKG_11# ODI_PKG_10#ODI_PKG_09#ODI_PKG_06/CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_06#MAP_25 7
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_06#MAP_27 CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_06 FAIL 19-10-2016 18:40:01 19-10-2016 18:47:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_11/CAPM#CORE#ODI_PKG_11#ODI_PKG_10/CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09/CAPM#CORE#ODI_PKG_11# ODI_PKG_10#ODI_PKG_09#ODI_PKG_06/CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_06#MAP_27 7
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_06#MAP_29 CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_06 SUCCESSFUL 19-10-2016 18:47:01 19-10-2016 18:54:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_11/CAPM#CORE#ODI_PKG_11#ODI_PKG_10/CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09/CAPM#CORE#ODI_PKG_11# ODI_PKG_10#ODI_PKG_09#ODI_PKG_06/CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_06#MAP_29 7
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_06#MAP_31 CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_06 SUCCESSFUL 19-10-2016 18:54:01 19-10-2016 19:01:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_11/CAPM#CORE#ODI_PKG_11#ODI_PKG_10/CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09/CAPM#CORE#ODI_PKG_11# ODI_PKG_10#ODI_PKG_09#ODI_PKG_06/CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_06#MAP_31 7
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_07 CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09 SUCCESSFUL 19-10-2016 18:33:01 19-10-2016 19:05:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_11/CAPM#CORE#ODI_PKG_11#ODI_PKG_10/CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09/CAPM#CORE#ODI_PKG_11# ODI_PKG_10#ODI_PKG_09#ODI_PKG_07 6
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_07#MAP_26 CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_07 SUCCESSFUL 19-10-2016 18:33:01 19-10-2016 18:41:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_11/CAPM#CORE#ODI_PKG_11#ODI_PKG_10/CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09/CAPM#CORE#ODI_PKG_11# ODI_PKG_10#ODI_PKG_09#ODI_PKG_07/CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_07#MAP_26 7
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_07#MAP_28 CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_07 SUCCESSFUL 19-10-2016 18:41:01 19-10-2016 18:49:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_11/CAPM#CORE#ODI_PKG_11#ODI_PKG_10/CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09/CAPM#CORE#ODI_PKG_11# ODI_PKG_10#ODI_PKG_09#ODI_PKG_07/CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_07#MAP_28 7
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_07#MAP_30 CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_07 SUCCESSFUL 19-10-2016 18:49:01 19-10-2016 18:57:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_11/CAPM#CORE#ODI_PKG_11#ODI_PKG_10/CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09/CAPM#CORE#ODI_PKG_11# ODI_PKG_10#ODI_PKG_09#ODI_PKG_07/CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_07#MAP_30 7
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_07#MAP_32 CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_07 SUCCESSFUL 19-10-2016 18:57:01 19-10-2016 19:05:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_11/CAPM#CORE#ODI_PKG_11#ODI_PKG_10/CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09/CAPM#CORE#ODI_PKG_11# ODI_PKG_10#ODI_PKG_09#ODI_PKG_07/CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_07#MAP_32 7
CAPM#CORE#ODI_PKG_14 CAPM#CORE SUCCESSFUL 19-10-2016 19:05:01 19-10-2016 20:05:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_14 3
CAPM#CORE#ODI_PKG_14#ODI_PKG_12 CAPM#CORE#ODI_PKG_14 SUCCESSFUL 19-10-2016 19:33:01 19-10-2016 20:05:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_14/CAPM#CORE#ODI_PKG_14#ODI_PKG_12 4
CAPM#CORE#ODI_PKG_14#ODI_PKG_12#MAP_34 CAPM#CORE#ODI_PKG_14#ODI_PKG_12 SUCCESSFUL 19-10-2016 19:33:01 19-10-2016 19:41:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_14/CAPM#CORE#ODI_PKG_14#ODI_PKG_12/CAPM#CORE#ODI_PKG_14#ODI_PKG_12#MAP_34 5
CAPM#CORE#ODI_PKG_14#ODI_PKG_12#MAP_36 CAPM#CORE#ODI_PKG_14#ODI_PKG_12 SUCCESSFUL 19-10-2016 19:41:01 19-10-2016 19:49:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_14/CAPM#CORE#ODI_PKG_14#ODI_PKG_12/CAPM#CORE#ODI_PKG_14#ODI_PKG_12#MAP_36 5
CAPM#CORE#ODI_PKG_14#ODI_PKG_12#MAP_38 CAPM#CORE#ODI_PKG_14#ODI_PKG_12 SUCCESSFUL 19-10-2016 19:49:01 19-10-2016 19:57:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_14/CAPM#CORE#ODI_PKG_14#ODI_PKG_12/CAPM#CORE#ODI_PKG_14#ODI_PKG_12#MAP_38 5
CAPM#CORE#ODI_PKG_14#ODI_PKG_12#MAP_40 CAPM#CORE#ODI_PKG_14#ODI_PKG_12 SUCCESSFUL 19-10-2016 19:57:01 19-10-2016 20:05:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_14/CAPM#CORE#ODI_PKG_14#ODI_PKG_12/CAPM#CORE#ODI_PKG_14#ODI_PKG_12#MAP_40 5
CAPM#CORE#ODI_PKG_14#ODI_PKG_13 CAPM#CORE#ODI_PKG_14 SUCCESSFUL 19-10-2016 19:05:01 19-10-2016 19:33:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_14/CAPM#CORE#ODI_PKG_14#ODI_PKG_13 4
CAPM#CORE#ODI_PKG_14#ODI_PKG_13#MAP_33 CAPM#CORE#ODI_PKG_14#ODI_PKG_13 SUCCESSFUL 19-10-2016 19:05:01 19-10-2016 19:12:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_14/CAPM#CORE#ODI_PKG_14#ODI_PKG_13/CAPM#CORE#ODI_PKG_14#ODI_PKG_13#MAP_33 5
CAPM#CORE#ODI_PKG_14#ODI_PKG_13#MAP_35 CAPM#CORE#ODI_PKG_14#ODI_PKG_13 SUCCESSFUL 19-10-2016 19:12:01 19-10-2016 19:19:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_14/CAPM#CORE#ODI_PKG_14#ODI_PKG_13/CAPM#CORE#ODI_PKG_14#ODI_PKG_13#MAP_35 5
CAPM#CORE#ODI_PKG_14#ODI_PKG_13#MAP_37 CAPM#CORE#ODI_PKG_14#ODI_PKG_13 SUCCESSFUL 19-10-2016 19:19:01 19-10-2016 19:26:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_14/CAPM#CORE#ODI_PKG_14#ODI_PKG_13/CAPM#CORE#ODI_PKG_14#ODI_PKG_13#MAP_37 5
CAPM#CORE#ODI_PKG_14#ODI_PKG_13#MAP_39 CAPM#CORE#ODI_PKG_14#ODI_PKG_13 SUCCESSFUL 19-10-2016 19:26:01 19-10-2016 19:33:00 /CAPM/CAPM#CORE/CAPM#CORE#ODI_PKG_14/CAPM#CORE#ODI_PKG_14#ODI_PKG_13/CAPM#CORE#ODI_PKG_14#ODI_PKG_13#MAP_39 5
CAPM#MART CAPM SUCCESSFUL 19-10-2016 20:05:00 19-10-2016 20:41:00 /CAPM/CAPM#MART 2
CAPM#MART#ODI_PKG_01 CAPM#MART SUCCESSFUL 19-10-2016 20:05:00 19-10-2016 20:33:00 /CAPM/CAPM#MART/CAPM#MART#ODI_PKG_01 3
CAPM#MART#ODI_PKG_01#MAP_01 CAPM#MART#ODI_PKG_01 SUCCESSFUL 19-10-2016 20:05:00 19-10-2016 20:12:00 /CAPM/CAPM#MART/CAPM#MART#ODI_PKG_01/CAPM#MART#ODI_PKG_01#MAP_01 4
CAPM#MART#ODI_PKG_01#MAP_04 CAPM#MART#ODI_PKG_01 SUCCESSFUL 19-10-2016 20:12:01 19-10-2016 20:19:00 /CAPM/CAPM#MART/CAPM#MART#ODI_PKG_01/CAPM#MART#ODI_PKG_01#MAP_04 4
CAPM#MART#ODI_PKG_01#MAP_07 CAPM#MART#ODI_PKG_01 SUCCESSFUL 19-10-2016 20:19:01 19-10-2016 20:26:00 /CAPM/CAPM#MART/CAPM#MART#ODI_PKG_01/CAPM#MART#ODI_PKG_01#MAP_07 4
CAPM#MART#ODI_PKG_01#MAP_10 CAPM#MART#ODI_PKG_01 SUCCESSFUL 19-10-2016 20:26:01 19-10-2016 20:33:00 /CAPM/CAPM#MART/CAPM#MART#ODI_PKG_01/CAPM#MART#ODI_PKG_01#MAP_10 4
CAPM#MART#ODI_PKG_02 CAPM#MART SUCCESSFUL 19-10-2016 20:05:00 19-10-2016 20:37:00 /CAPM/CAPM#MART/CAPM#MART#ODI_PKG_02 3
CAPM#MART#ODI_PKG_02#MAP_02 CAPM#MART#ODI_PKG_02 SUCCESSFUL 19-10-2016 20:05:00 19-10-2016 20:13:00 /CAPM/CAPM#MART/CAPM#MART#ODI_PKG_02/CAPM#MART#ODI_PKG_02#MAP_02 4
CAPM#MART#ODI_PKG_02#MAP_05 CAPM#MART#ODI_PKG_02 SUCCESSFUL 19-10-2016 20:13:01 19-10-2016 20:21:00 /CAPM/CAPM#MART/CAPM#MART#ODI_PKG_02/CAPM#MART#ODI_PKG_02#MAP_05 4
CAPM#MART#ODI_PKG_02#MAP_08 CAPM#MART#ODI_PKG_02 SUCCESSFUL 19-10-2016 20:21:01 19-10-2016 20:29:00 /CAPM/CAPM#MART/CAPM#MART#ODI_PKG_02/CAPM#MART#ODI_PKG_02#MAP_08 4
CAPM#MART#ODI_PKG_02#MAP_11 CAPM#MART#ODI_PKG_02 SUCCESSFUL 19-10-2016 20:29:01 19-10-2016 20:37:00 /CAPM/CAPM#MART/CAPM#MART#ODI_PKG_02/CAPM#MART#ODI_PKG_02#MAP_11 4
CAPM#MART#ODI_PKG_03 CAPM#MART SUCCESSFUL 19-10-2016 20:05:00 19-10-2016 20:41:00 /CAPM/CAPM#MART/CAPM#MART#ODI_PKG_03 3
CAPM#MART#ODI_PKG_03#MAP_03 CAPM#MART#ODI_PKG_03 SUCCESSFUL 19-10-2016 20:05:00 19-10-2016 20:14:00 /CAPM/CAPM#MART/CAPM#MART#ODI_PKG_03/CAPM#MART#ODI_PKG_03#MAP_03 4
CAPM#MART#ODI_PKG_03#MAP_06 CAPM#MART#ODI_PKG_03 SUCCESSFUL 19-10-2016 20:14:01 19-10-2016 20:23:00 /CAPM/CAPM#MART/CAPM#MART#ODI_PKG_03/CAPM#MART#ODI_PKG_03#MAP_06 4
CAPM#MART#ODI_PKG_03#MAP_09 CAPM#MART#ODI_PKG_03 SUCCESSFUL 19-10-2016 20:23:01 19-10-2016 20:32:00 /CAPM/CAPM#MART/CAPM#MART#ODI_PKG_03/CAPM#MART#ODI_PKG_03#MAP_09 4
CAPM#MART#ODI_PKG_03#MAP_12 CAPM#MART#ODI_PKG_03 SUCCESSFUL 19-10-2016 20:32:01 19-10-2016 20:41:00 /CAPM/CAPM#MART/CAPM#MART#ODI_PKG_03/CAPM#MART#ODI_PKG_03#MAP_12 4
CAPM#STAGE CAPM SUCCESSFUL 19-10-2016 17:00:03 19-10-2016 17:32:00 /CAPM/CAPM#STAGE 2
CAPM#STAGE#ODI_PKG_01 CAPM#STAGE SUCCESSFUL 19-10-2016 17:00:03 19-10-2016 17:20:00 /CAPM/CAPM#STAGE/CAPM#STAGE#ODI_PKG_01 3
CAPM#STAGE#ODI_PKG_01#MAP_01 CAPM#STAGE#ODI_PKG_01 SUCCESSFUL 19-10-2016 17:00:03 19-10-2016 17:05:00 /CAPM/CAPM#STAGE/CAPM#STAGE#ODI_PKG_01/CAPM#STAGE#ODI_PKG_01#MAP_01 4
CAPM#STAGE#ODI_PKG_01#MAP_04 CAPM#STAGE#ODI_PKG_01 SUCCESSFUL 19-10-2016 17:05:01 19-10-2016 17:10:00 /CAPM/CAPM#STAGE/CAPM#STAGE#ODI_PKG_01/CAPM#STAGE#ODI_PKG_01#MAP_04 4
CAPM#STAGE#ODI_PKG_01#MAP_07 CAPM#STAGE#ODI_PKG_01 SUCCESSFUL 19-10-2016 17:10:01 19-10-2016 17:15:00 /CAPM/CAPM#STAGE/CAPM#STAGE#ODI_PKG_01/CAPM#STAGE#ODI_PKG_01#MAP_07 4
CAPM#STAGE#ODI_PKG_01#MAP_10 CAPM#STAGE#ODI_PKG_01 SUCCESSFUL 19-10-2016 17:15:01 19-10-2016 17:20:00 /CAPM/CAPM#STAGE/CAPM#STAGE#ODI_PKG_01/CAPM#STAGE#ODI_PKG_01#MAP_10 4
CAPM#STAGE#ODI_PKG_02 CAPM#STAGE SUCCESSFUL 19-10-2016 17:00:03 19-10-2016 17:28:00 /CAPM/CAPM#STAGE/CAPM#STAGE#ODI_PKG_02 3
CAPM#STAGE#ODI_PKG_02#MAP_02 CAPM#STAGE#ODI_PKG_02 SUCCESSFUL 19-10-2016 17:00:03 19-10-2016 17:07:00 /CAPM/CAPM#STAGE/CAPM#STAGE#ODI_PKG_02/CAPM#STAGE#ODI_PKG_02#MAP_02 4
CAPM#STAGE#ODI_PKG_02#MAP_05 CAPM#STAGE#ODI_PKG_02 SUCCESSFUL 19-10-2016 17:07:01 19-10-2016 17:14:00 /CAPM/CAPM#STAGE/CAPM#STAGE#ODI_PKG_02/CAPM#STAGE#ODI_PKG_02#MAP_05 4
CAPM#STAGE#ODI_PKG_02#MAP_08 CAPM#STAGE#ODI_PKG_02 SUCCESSFUL 19-10-2016 17:14:01 19-10-2016 17:21:00 /CAPM/CAPM#STAGE/CAPM#STAGE#ODI_PKG_02/CAPM#STAGE#ODI_PKG_02#MAP_08 4
CAPM#STAGE#ODI_PKG_02#MAP_11 CAPM#STAGE#ODI_PKG_02 SUCCESSFUL 19-10-2016 17:21:01 19-10-2016 17:28:00 /CAPM/CAPM#STAGE/CAPM#STAGE#ODI_PKG_02/CAPM#STAGE#ODI_PKG_02#MAP_11 4
CAPM#STAGE#ODI_PKG_03 CAPM#STAGE SUCCESSFUL 19-10-2016 17:00:03 19-10-2016 17:32:00 /CAPM/CAPM#STAGE/CAPM#STAGE#ODI_PKG_03 3
CAPM#STAGE#ODI_PKG_03#MAP_03 CAPM#STAGE#ODI_PKG_03 SUCCESSFUL 19-10-2016 17:00:03 19-10-2016 17:08:00 /CAPM/CAPM#STAGE/CAPM#STAGE#ODI_PKG_03/CAPM#STAGE#ODI_PKG_03#MAP_03 4
CAPM#STAGE#ODI_PKG_03#MAP_06 CAPM#STAGE#ODI_PKG_03 SUCCESSFUL 19-10-2016 17:08:01 19-10-2016 17:16:00 /CAPM/CAPM#STAGE/CAPM#STAGE#ODI_PKG_03/CAPM#STAGE#ODI_PKG_03#MAP_06 4
CAPM#STAGE#ODI_PKG_03#MAP_09 CAPM#STAGE#ODI_PKG_03 SUCCESSFUL 19-10-2016 17:16:01 19-10-2016 17:24:00 /CAPM/CAPM#STAGE/CAPM#STAGE#ODI_PKG_03/CAPM#STAGE#ODI_PKG_03#MAP_09 4
CAPM#STAGE#ODI_PKG_03#MAP_12 CAPM#STAGE#ODI_PKG_03 SUCCESSFUL 19-10-2016 17:24:01 19-10-2016 17:32:00 /CAPM/CAPM#STAGE/CAPM#STAGE#ODI_PKG_03/CAPM#STAGE#ODI_PKG_03#MAP_12 4
###########################
###########################
Thanks & Regards
|
|
|
|
|
Re: Correct order of data in Hierarchical Query [message #657742 is a reply to message #657731] |
Sun, 20 November 2016 09:38 |
ramjss
Messages: 10 Registered: May 2009 Location: delhi
|
Junior Member |
|
|
Dear BlackSwan,
Sorry for inconenience .I'm again trying to post my question with appropiate format.
I've 2 tables (1) FUNKTION_STATUS and (2) DIM_PROZESS_CONFIG .
Tables structure and data in the table are attached in this message.
I've executed the below script based on the data provided::
[color=red]WITH TREE AS (
SELECT PROZESS_CONFIG_ID , STATUS, START_DATE, END_DATE
FROM FUNKTION_STATUS
),
TREE1 (PROZESS_CONFIG_ID,PARENT) AS (
SELECT PROZESS_CONFIG_ID ,PARENT
FROM DIM_PROZESS_CONFIG
),
DATA AS (
SELECT T1.*, T.STATUS, T.START_DATE, T.END_DATE
FROM TREE1 T1
LEFT JOIN TREE T ON T.PROZESS_CONFIG_ID = T1.PROZESS_CONFIG_ID
),
DATA_WITH_LEAF AS (
SELECT D.*, CONNECT_BY_ISLEAF IS_LEAF, ROWNUM RN, SYS_CONNECT_BY_PATH(PROZESS_CONFIG_ID, '/') PATH, LEVEL LVL
FROM DATA D
START WITH PARENT IS NULL
CONNECT BY PARENT = PRIOR PROZESS_CONFIG_ID
),
RES_TREE(PROZESS_CONFIG_ID, PARENT, STATUS, RN, START_DATE, END_DATE, PATH, LVL) AS (
SELECT PROZESS_CONFIG_ID, PARENT, STATUS, RN, START_DATE, END_DATE, PATH, LVL
FROM DATA_WITH_LEAF T
WHERE IS_LEAF = 1
UNION ALL
SELECT D.PROZESS_CONFIG_ID, D.PARENT, CASE WHEN T.STATUS = 'FAILED' THEN T.STATUS ELSE NVL(D.STATUS, T.STATUS) END, D.RN,
NVL(D.START_DATE, T.START_DATE),
NVL(D.END_DATE, T.END_DATE),
D.PATH, D.LVL
FROM DATA_WITH_LEAF D
JOIN RES_TREE T ON T.PARENT = D.PROZESS_CONFIG_ID
)
SELECT PROZESS_CONFIG_ID, PARENT, MIN(STATUS) AS STATUS,
MIN(TO_CHAR(START_DATE, 'DD-MM-YYYY HH24:MI:SS' )) AS START_DATE, MAX(TO_CHAR(END_DATE,'DD-MM-YYYY HH24:MI:SS')) AS END_DATE,
PATH, LVL
FROM RES_TREE
GROUP BY PROZESS_CONFIG_ID, PARENT, RN, PATH, LVL
ORDER BY RN
[/color]
###############
Output of the data at 2nd level is not being sorted not in the order in which order it was started. I know that why it is not being sorted in correct order by when I was doing to correct it ,the script goes in infinite loop.
For prozess_config_id CAPM#STAGE,CAPM#CORE and CAPM#CORE it should be in the same order as I mentioned but in my output in is coming in order as
1::CAPM#CORE
2::CAPM#MART
3::CAPM#STAGE
So please guide me.
OUTPUT as below::
#########################
#########################
PROZESS_CONFIG_ID PARENT STATUS START_DATE END_DATE LVL
CAPM FAIL 19-10-2016 17:00:03 19-10-2016 20:41:00 1
CAPM#CORE CAPM FAIL 19-10-2016 18:05:03 19-10-2016 20:05:00 2
CAPM#CORE#ODI_PKG_11 CAPM#CORE FAIL 19-10-2016 18:05:03 19-10-2016 19:05:00 3
CAPM#CORE#ODI_PKG_11#ODI_PKG_04 CAPM#CORE#ODI_PKG_11 SUCCESSFUL 19-10-2016 18:05:03 19-10-2016 18:35:00 4
CAPM#CORE#ODI_PKG_11#ODI_PKG_04#MAP_11 CAPM#CORE#ODI_PKG_11#ODI_PKG_04 SUCCESSFUL 19-10-2016 18:05:03 19-10-2016 18:10:00 5
CAPM#CORE#ODI_PKG_11#ODI_PKG_04#MAP_14 CAPM#CORE#ODI_PKG_11#ODI_PKG_04 SUCCESSFUL 19-10-2016 18:10:01 19-10-2016 18:15:00 5
CAPM#CORE#ODI_PKG_11#ODI_PKG_04#MAP_17 CAPM#CORE#ODI_PKG_11#ODI_PKG_04 SUCCESSFUL 19-10-2016 18:15:01 19-10-2016 18:20:00 5
CAPM#CORE#ODI_PKG_11#ODI_PKG_04#MAP_20 CAPM#CORE#ODI_PKG_11#ODI_PKG_04 SUCCESSFUL 19-10-2016 18:20:00 19-10-2016 18:25:00 5
CAPM#CORE#ODI_PKG_11#ODI_PKG_04#MAP_23 CAPM#CORE#ODI_PKG_11#ODI_PKG_04 SUCCESSFUL 19-10-2016 18:25:01 19-10-2016 18:30:00 5
CAPM#CORE#ODI_PKG_11#ODI_PKG_04#MAP_24 CAPM#CORE#ODI_PKG_11#ODI_PKG_04 SUCCESSFUL 19-10-2016 18:30:01 19-10-2016 18:35:00 5
CAPM#CORE#ODI_PKG_11#ODI_PKG_08 CAPM#CORE#ODI_PKG_11 SUCCESSFUL 19-10-2016 18:05:03 19-10-2016 18:37:00 4
CAPM#CORE#ODI_PKG_11#ODI_PKG_08#MAP_13 CAPM#CORE#ODI_PKG_11#ODI_PKG_08 SUCCESSFUL 19-10-2016 18:05:03 19-10-2016 18:13:00 5
CAPM#CORE#ODI_PKG_11#ODI_PKG_08#MAP_16 CAPM#CORE#ODI_PKG_11#ODI_PKG_08 SUCCESSFUL 19-10-2016 18:13:01 19-10-2016 18:21:00 5
CAPM#CORE#ODI_PKG_11#ODI_PKG_08#MAP_19 CAPM#CORE#ODI_PKG_11#ODI_PKG_08 SUCCESSFUL 19-10-2016 18:21:01 19-10-2016 18:29:00 5
CAPM#CORE#ODI_PKG_11#ODI_PKG_08#MAP_22 CAPM#CORE#ODI_PKG_11#ODI_PKG_08 SUCCESSFUL 19-10-2016 18:29:01 19-10-2016 18:37:00 5
CAPM#CORE#ODI_PKG_11#ODI_PKG_10 CAPM#CORE#ODI_PKG_11 FAIL 19-10-2016 18:05:03 19-10-2016 19:05:00 4
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_05 CAPM#CORE#ODI_PKG_11#ODI_PKG_10 SUCCESSFUL 19-10-2016 18:05:03 19-10-2016 18:33:00 5
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_05#MAP_12 CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_05 SUCCESSFUL 19-10-2016 18:05:03 19-10-2016 18:12:00 6
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_05#MAP_15 CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_05 SUCCESSFUL 19-10-2016 18:12:01 19-10-2016 18:19:00 6
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_05#MAP_18 CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_05 SUCCESSFUL 19-10-2016 18:19:01 19-10-2016 18:26:00 6
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_05#MAP_21 CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_05 SUCCESSFUL 19-10-2016 18:26:01 19-10-2016 18:33:00 6
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09 CAPM#CORE#ODI_PKG_11#ODI_PKG_10 FAIL 19-10-2016 18:33:01 19-10-2016 19:05:00 5
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_06 CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09 FAIL 19-10-2016 18:33:01 19-10-2016 19:01:00 6
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_06#MAP_25 CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_06 SUCCESSFUL 19-10-2016 18:33:01 19-10-2016 18:40:00 7
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_06#MAP_27 CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_06 FAIL 19-10-2016 18:40:01 19-10-2016 18:47:00 7
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_06#MAP_29 CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_06 SUCCESSFUL 19-10-2016 18:47:01 19-10-2016 18:54:00 7
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_06#MAP_31 CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_06 SUCCESSFUL 19-10-2016 18:54:01 19-10-2016 19:01:00 7
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_07 CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09 SUCCESSFUL 19-10-2016 18:33:01 19-10-2016 19:05:00 6
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_07#MAP_26 CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_07 SUCCESSFUL 19-10-2016 18:33:01 19-10-2016 18:41:00 7
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_07#MAP_28 CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_07 SUCCESSFUL 19-10-2016 18:41:01 19-10-2016 18:49:00 7
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_07#MAP_30 CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_07 SUCCESSFUL 19-10-2016 18:49:01 19-10-2016 18:57:00 7
CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_07#MAP_32 CAPM#CORE#ODI_PKG_11#ODI_PKG_10#ODI_PKG_09#ODI_PKG_07 SUCCESSFUL 19-10-2016 18:57:01 19-10-2016 19:05:00 7
CAPM#CORE#ODI_PKG_14 CAPM#CORE SUCCESSFUL 19-10-2016 19:05:01 19-10-2016 20:05:00 3
CAPM#CORE#ODI_PKG_14#ODI_PKG_12 CAPM#CORE#ODI_PKG_14 SUCCESSFUL 19-10-2016 19:33:01 19-10-2016 20:05:00 4
CAPM#CORE#ODI_PKG_14#ODI_PKG_12#MAP_34 CAPM#CORE#ODI_PKG_14#ODI_PKG_12 SUCCESSFUL 19-10-2016 19:33:01 19-10-2016 19:41:00 5
CAPM#CORE#ODI_PKG_14#ODI_PKG_12#MAP_36 CAPM#CORE#ODI_PKG_14#ODI_PKG_12 SUCCESSFUL 19-10-2016 19:41:01 19-10-2016 19:49:00 5
CAPM#CORE#ODI_PKG_14#ODI_PKG_12#MAP_38 CAPM#CORE#ODI_PKG_14#ODI_PKG_12 SUCCESSFUL 19-10-2016 19:49:01 19-10-2016 19:57:00 5
CAPM#CORE#ODI_PKG_14#ODI_PKG_12#MAP_40 CAPM#CORE#ODI_PKG_14#ODI_PKG_12 SUCCESSFUL 19-10-2016 19:57:01 19-10-2016 20:05:00 5
CAPM#CORE#ODI_PKG_14#ODI_PKG_13 CAPM#CORE#ODI_PKG_14 SUCCESSFUL 19-10-2016 19:05:01 19-10-2016 19:33:00 4
CAPM#CORE#ODI_PKG_14#ODI_PKG_13#MAP_33 CAPM#CORE#ODI_PKG_14#ODI_PKG_13 SUCCESSFUL 19-10-2016 19:05:01 19-10-2016 19:12:00 5
CAPM#CORE#ODI_PKG_14#ODI_PKG_13#MAP_35 CAPM#CORE#ODI_PKG_14#ODI_PKG_13 SUCCESSFUL 19-10-2016 19:12:01 19-10-2016 19:19:00 5
CAPM#CORE#ODI_PKG_14#ODI_PKG_13#MAP_37 CAPM#CORE#ODI_PKG_14#ODI_PKG_13 SUCCESSFUL 19-10-2016 19:19:01 19-10-2016 19:26:00 5
CAPM#CORE#ODI_PKG_14#ODI_PKG_13#MAP_39 CAPM#CORE#ODI_PKG_14#ODI_PKG_13 SUCCESSFUL 19-10-2016 19:26:01 19-10-2016 19:33:00 5
CAPM#MART CAPM SUCCESSFUL 19-10-2016 20:05:00 19-10-2016 20:41:00 2
CAPM#MART#ODI_PKG_01 CAPM#MART SUCCESSFUL 19-10-2016 20:05:00 19-10-2016 20:33:00 3
CAPM#MART#ODI_PKG_01#MAP_01 CAPM#MART#ODI_PKG_01 SUCCESSFUL 19-10-2016 20:05:00 19-10-2016 20:12:00 4
CAPM#MART#ODI_PKG_01#MAP_04 CAPM#MART#ODI_PKG_01 SUCCESSFUL 19-10-2016 20:12:01 19-10-2016 20:19:00 4
CAPM#MART#ODI_PKG_01#MAP_07 CAPM#MART#ODI_PKG_01 SUCCESSFUL 19-10-2016 20:19:01 19-10-2016 20:26:00 4
CAPM#MART#ODI_PKG_01#MAP_10 CAPM#MART#ODI_PKG_01 SUCCESSFUL 19-10-2016 20:26:01 19-10-2016 20:33:00 4
CAPM#MART#ODI_PKG_02 CAPM#MART SUCCESSFUL 19-10-2016 20:05:00 19-10-2016 20:37:00 3
CAPM#MART#ODI_PKG_02#MAP_02 CAPM#MART#ODI_PKG_02 SUCCESSFUL 19-10-2016 20:05:00 19-10-2016 20:13:00 4
CAPM#MART#ODI_PKG_02#MAP_05 CAPM#MART#ODI_PKG_02 SUCCESSFUL 19-10-2016 20:13:01 19-10-2016 20:21:00 4
CAPM#MART#ODI_PKG_02#MAP_08 CAPM#MART#ODI_PKG_02 SUCCESSFUL 19-10-2016 20:21:01 19-10-2016 20:29:00 4
CAPM#MART#ODI_PKG_02#MAP_11 CAPM#MART#ODI_PKG_02 SUCCESSFUL 19-10-2016 20:29:01 19-10-2016 20:37:00 4
CAPM#MART#ODI_PKG_03 CAPM#MART SUCCESSFUL 19-10-2016 20:05:00 19-10-2016 20:41:00 3
CAPM#MART#ODI_PKG_03#MAP_03 CAPM#MART#ODI_PKG_03 SUCCESSFUL 19-10-2016 20:05:00 19-10-2016 20:14:00 4
CAPM#MART#ODI_PKG_03#MAP_06 CAPM#MART#ODI_PKG_03 SUCCESSFUL 19-10-2016 20:14:01 19-10-2016 20:23:00 4
CAPM#MART#ODI_PKG_03#MAP_09 CAPM#MART#ODI_PKG_03 SUCCESSFUL 19-10-2016 20:23:01 19-10-2016 20:32:00 4
CAPM#MART#ODI_PKG_03#MAP_12 CAPM#MART#ODI_PKG_03 SUCCESSFUL 19-10-2016 20:32:01 19-10-2016 20:41:00 4
CAPM#STAGE CAPM SUCCESSFUL 19-10-2016 17:00:03 19-10-2016 17:32:00 2
CAPM#STAGE#ODI_PKG_01 CAPM#STAGE SUCCESSFUL 19-10-2016 17:00:03 19-10-2016 17:20:00 3
CAPM#STAGE#ODI_PKG_01#MAP_01 CAPM#STAGE#ODI_PKG_01 SUCCESSFUL 19-10-2016 17:00:03 19-10-2016 17:05:00 4
CAPM#STAGE#ODI_PKG_01#MAP_04 CAPM#STAGE#ODI_PKG_01 SUCCESSFUL 19-10-2016 17:05:01 19-10-2016 17:10:00 4
CAPM#STAGE#ODI_PKG_01#MAP_07 CAPM#STAGE#ODI_PKG_01 SUCCESSFUL 19-10-2016 17:10:01 19-10-2016 17:15:00 4
CAPM#STAGE#ODI_PKG_01#MAP_10 CAPM#STAGE#ODI_PKG_01 SUCCESSFUL 19-10-2016 17:15:01 19-10-2016 17:20:00 4
CAPM#STAGE#ODI_PKG_02 CAPM#STAGE SUCCESSFUL 19-10-2016 17:00:03 19-10-2016 17:28:00 3
CAPM#STAGE#ODI_PKG_02#MAP_02 CAPM#STAGE#ODI_PKG_02 SUCCESSFUL 19-10-2016 17:00:03 19-10-2016 17:07:00 4
CAPM#STAGE#ODI_PKG_02#MAP_05 CAPM#STAGE#ODI_PKG_02 SUCCESSFUL 19-10-2016 17:07:01 19-10-2016 17:14:00 4
CAPM#STAGE#ODI_PKG_02#MAP_08 CAPM#STAGE#ODI_PKG_02 SUCCESSFUL 19-10-2016 17:14:01 19-10-2016 17:21:00 4
CAPM#STAGE#ODI_PKG_02#MAP_11 CAPM#STAGE#ODI_PKG_02 SUCCESSFUL 19-10-2016 17:21:01 19-10-2016 17:28:00 4
CAPM#STAGE#ODI_PKG_03 CAPM#STAGE SUCCESSFUL 19-10-2016 17:00:03 19-10-2016 17:32:00 3
CAPM#STAGE#ODI_PKG_03#MAP_03 CAPM#STAGE#ODI_PKG_03 SUCCESSFUL 19-10-2016 17:00:03 19-10-2016 17:08:00 4
CAPM#STAGE#ODI_PKG_03#MAP_06 CAPM#STAGE#ODI_PKG_03 SUCCESSFUL 19-10-2016 17:08:01 19-10-2016 17:16:00 4
CAPM#STAGE#ODI_PKG_03#MAP_09 CAPM#STAGE#ODI_PKG_03 SUCCESSFUL 19-10-2016 17:16:01 19-10-2016 17:24:00 4
CAPM#STAGE#ODI_PKG_03#MAP_12 CAPM#STAGE#ODI_PKG_03 SUCCESSFUL 19-10-2016 17:24:01 19-10-2016 17:32:00 4
###########################
###########################
|
|
|
|
|
|
Re: Correct order of data in Hierarchical Query [message #657811 is a reply to message #657808] |
Wed, 23 November 2016 06:39 |
ramjss
Messages: 10 Registered: May 2009 Location: delhi
|
Junior Member |
|
|
Dear Michel,
Below is the script for my requirement.
with tree as (
select prozess_config_id , status, start_date, end_date
from funktion_status
),
tree1 (prozess_config_id,parent) as (
select prozess_config_id ,parent
from dim_prozess_config
),
data as (
select t1.*, t.status, t.start_date, t.end_date
from tree1 t1
left join tree t on t.prozess_config_id = t1.prozess_config_id
),
data_with_leaf as (
select d.*, connect_by_isleaf is_leaf, rownum rn, sys_connect_by_path(prozess_config_id, '/') path, level lvl
from data d
start with parent is null
connect by parent = prior prozess_config_id
),
res_tree(prozess_config_id, parent, status, rn, start_date, end_date, path, lvl) as (
select prozess_config_id, parent, status, rn, start_date, end_date, path, lvl
from data_with_leaf t
where is_leaf = 1
union all
select d.prozess_config_id, d.parent, case when t.status = 'FAILED' then t.status else nvl(d.status, t.status) end, d.rn,
nvl(d.start_date, t.start_date),
nvl(d.end_date, t.end_date),
d.path, d.lvl
from data_with_leaf d
join res_tree t on t.parent = d.prozess_config_id
),
res_group as (
select prozess_config_id, parent,
min(status) as status, min(to_char(start_date, 'DD-MM-YYYY HH24:MI:SS' )) as start_date,
max(to_char(end_date,'DD-MM-YYYY HH24:MI:SS')) as end_date,
path, lvl
from res_tree
group by prozess_config_id, parent, rn, path, lvl
)
select *
from res_group
start with parent is null
connect by parent = prior prozess_config_id
order siblings by start_date, end_date
Thanks & Regards
Ram
[Updated on: Wed, 23 November 2016 06:39] Report message to a moderator
|
|
|
Re: Correct order of data in Hierarchical Query [message #657814 is a reply to message #657811] |
Wed, 23 November 2016 08:09 |
joy_division
Messages: 4963 Registered: February 2005 Location: East Coast USA
|
Senior Member |
|
|
Using max on a to_char of date is incorrect
SQL> l
1 with data as (select to_date('01-01-2016','dd-mm-yyyy') date1 from dual
2 union all
3 select to_date('04-01-2009','dd-mm-yyyy') date1 from dual)
4* select max(to_char(data.date1,'dd-mm-yyyy')) from data
SQL> /
MAX(TO_CHAR(DATA.DATE1,'DD-MM-YYYY'))
---------------------------------------------------------------------------
04-01-2009
|
|
|
|
Re: Correct order of data in Hierarchical Query [message #657824 is a reply to message #657823] |
Wed, 23 November 2016 09:10 |
cookiemonster
Messages: 13925 Registered: September 2008 Location: Rainy Manchester
|
Senior Member |
|
|
That's not the format you're using in your code above. If you're really using that format with max and got the correct result then you got lucky with the data you had. As soon as it changes you'll get the wrong result.
If you want the output in a particular format then use to_char after the max/min, not before.
|
|
|
|
|
|
Goto Forum:
Current Time: Fri Jun 28 10:05:34 CDT 2024
|