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
;

相关文章

Java Oracle 结果集是Java语言中处理数据库查询结果的一种方...
Java AES和Oracle AES是现代加密技术中最常使用的两种AES加密...
Java是一种广泛应用的编程语言,具备可靠性、安全性、跨平台...
随着移动互联网的发展,抽奖活动成为了营销活动中不可或缺的...
Java和Oracle都是在计算机领域应用非常广泛的技术,他们经常...
Java 是一门非常流行的编程语言,它可以运行于各种操作系统上...