D1_ACTIVITY_STAT_MV.sql 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. DROP MATERIALIZED VIEW D1_ACTIVITY_STAT_MV
  2. /
  3. CREATE MATERIALIZED VIEW D1_ACTIVITY_STAT_MV
  4. ORGANIZATION HEAP PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255
  5. NOCOMPRESS LOGGING
  6. STORAGE( INITIAL 262144 NEXT 262144 MINEXTENTS 1 MAXEXTENTS 2147483645
  7. PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
  8. BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
  9. TABLESPACE "MDMTS_01"
  10. PARALLEL
  11. BUILD DEFERRED
  12. USING INDEX
  13. REFRESH COMPLETE ON DEMAND
  14. USING DEFAULT LOCAL ROLLBACK SEGMENT
  15. USING ENFORCED CONSTRAINTS DISABLE QUERY REWRITE
  16. AS select A.D1_ACTIVITY_ID, A.BUS_OBJ_CD,
  17. A.BO_STATUS_CD, S.BO_STATUS_COND_FLG, SO.BO_OPT_VAL D1_LOGICAL_STATUS,
  18. A.ACTIVITY_TYPE_CD, A.FIELD_TASK_TYPE,
  19. A.CRE_DTTM, A.START_DTTM, A.END_DTTM, A.STATUS_UPD_DTTM,
  20. MESSAGE_CAT_NBR, MESSAGE_NBR
  21. from (SELECT A.D1_ACTIVITY_ID,
  22. max(MESSAGE_CAT_NBR) KEEP (DENSE_RANK LAST ORDER BY SEQNO) MESSAGE_CAT_NBR,
  23. max(MESSAGE_NBR) KEEP (DENSE_RANK LAST ORDER BY SEQNO) MESSAGE_NBR
  24. FROM D1_ACTIVITY A
  25. left join D1_ACTIVITY_LOG L on L.D1_ACTIVITY_ID = A.D1_ACTIVITY_ID
  26. and L.LOG_ENTRY_TYPE_FLG = 'F1EX'
  27. where CRE_DTTM between SYSDATE - 365 and SYSDATE
  28. GROUP BY A.D1_ACTIVITY_ID order by D1_ACTIVITY_ID) L
  29. inner join D1_ACTIVITY A on A.D1_ACTIVITY_ID = L.D1_ACTIVITY_ID
  30. inner join F1_BUS_OBJ BO on BO.BUS_OBJ_CD = A.BUS_OBJ_CD
  31. inner join F1_BUS_OBJ_STATUS S on S.BUS_OBJ_CD = BO.LIFE_CYCLE_BO_CD
  32. and S.BO_STATUS_CD = A.BO_STATUS_CD
  33. left join F1_BUS_OBJ_STATUS_OPT SO on SO.BUS_OBJ_CD = S.BUS_OBJ_CD
  34. and SO.BO_STATUS_CD = S.BO_STATUS_CD
  35. and SO.BO_OPT_FLG = 'D1LS'
  36. where (S.BO_STATUS_COND_FLG != 'F1FL' or
  37. nvl(A.END_DTTM, A.STATUS_UPD_DTTM) between SYSDATE - 30 and SYSDATE)
  38. /
  39. CREATE unique index D1T432P0 on D1_ACTIVITY_STAT_MV(D1_ACTIVITY_ID)
  40. /