oracle视图举例之一

前端之家收集整理的这篇文章主要介绍了oracle视图举例之一前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
CREATE OR REPLACE VIEW V_ALARM_REPORT_USER_R AS
SELECT AAR.REPORT_ID,AAR.ALARM_TYPE_ID,AAR.ALARM_TYPE_NAME,AAR.ALARM_CONTENT,AAR.LINE_CODE,AAR.STATION,AAR.REPORTER_CODE,AAR.REPORTER_NAME,--提报人姓名
       AAW.AD_FLOW_ID,AAW.AD_RECEIVER_ROLE_ID,--哪个角色的人接收
       SUW.USER_AD_ROLES USER_AD_ROLES,--接收人具有AD角色
       SUW.USER_CODE AS RECEIVER_CODE,SUW.USER_NAME AS RECEIVER_NAME,AAW.AD_IF_REPORT_ANSWER,AAR.REPORT_TIME,AAW.AD_RESPONSE_INTERVAL,AAR.REPORT_TIME + (AAW.AD_RESPONSE_INTERVAL / 24 / 60) AS RESPONSE_EVENT_TIME,AAW.AD_COMPLETE_INTERVAL,AAR.RESPONSE_TIME,AAR.RESPONSE_TIME + (AAW.AD_COMPLETE_INTERVAL / 24 / 60) AS COMPLETE_EVENT_TIME,/*(SELECT PT1.MODE_ID
        FROM AD_REPORT_ROLE PT1
       WHERE PT1.ROLE_ID = AAW.AD_RECEIVER_ROLE_ID
         AND PT1.STAGE_ID = 'RESPONSE')*/
       T4.MODE_ID RESPONSE_MODE_ID,--响应通讯方式
       /* (SELECT PT1.MODE_ID
        FROM AD_REPORT_ROLE PT1
       WHERE PT1.ROLE_ID = AAW.AD_RECEIVER_ROLE_ID
         AND PT1.STAGE_ID = 'COMPLETE') COMPLETE_MODE_ID,*/ --完成通讯方式
       SUW.LINE_CODE AS USER_LINE_CODE
  FROM AD_ALARM_REPORT   AAR,--预警记录表
       AD_ALARM_WORKFLOW AAW,--流程表
       SYS_USER          SUW,--获取接收人
       AD_REPORT_ROLE    T4 --根据角色获取通讯方式(一角色多个通讯方式)
 WHERE AAR.ALARM_TYPE_ID = AAW.ALARM_TYPE_ID
   AND AAW.AD_RECEIVER_ROLE_ID = T4.ROLE_ID
   AND T4.STAGE_ID = 'RESPONSE'
   AND SUW.IF_REPONSER = 'true'
   AND (SUW.LINE_CODE = AAR.LINE_CODE OR SUW.LINE_CODE = 'ANDON-LINE-ALL')
   AND INSTR(',' || SUW.USER_AD_ROLES || ',',' || AAW.AD_RECEIVER_ROLE_ID || ',') > 0
;

猜你在找的Oracle相关文章