SELECT C.SETID , A.TREE_NAME , A.TREE_LEVEL , C.TREE_NODE , A.EFFDT , L.LANGUAGE_CD , L.DESCR FROM PSTREELEVEL A , PSTREENODE B , PS_TREE_NODE_TBL C , PS_TREE_NODE_LANG L WHERE B.SETID = A.SETID AND B.TREE_NAME = A.TREE_NAME AND B.EFFDT = A.EFFDT AND B.SETID = C.SETID AND B.TREE_NODE = C.TREE_NODE AND C.EFFDT = ( SELECT MAX(D.EFFDT) FROM PS_TREE_NODE_TBL D WHERE D.SETID = C.SETID AND D.TREE_NODE = C.TREE_NODE AND D.EFFDT <= B.EFFDT) AND B.TREE_LEVEL_NUM < A.TREE_LEVEL_NUM AND EXISTS ( SELECT 'X' FROM PSTREENODE D WHERE D.SETID = B.SETID AND D.TREE_NAME = B.TREE_NAME AND D.EFFDT = B.EFFDT AND D.TREE_LEVEL_NUM = A.TREE_LEVEL_NUM AND D.TREE_NODE_NUM BETWEEN B.TREE_NODE_NUM AND B.TREE_NODE_NUM_END) AND L.SETID = C.SETID AND L.TREE_NODE = C.TREE_NODE AND L.EFFDT = C.EFFDT
|