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
;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值