這樣的SQL不想改第二遍更不想再寫第二遍

作爲一個後臺開發寫數據報表是很平常的事情,但要寫一個統計整個系統的東西還把兩個東西合到一起你就應該有多噁心(關鍵是有些數據還不是按照規律)。還要在上面的情形下,不斷的加數據改東西。說了這麼多可能還是因爲我自己太菜吧,不說了上SQL。

WITH FILEDOC AS
 (SELECT BOD.FILENAME,
         TO_CHAR(BOD.BO_DOC_BODY_ID) BO_DOC_BODY_ID,
         BUS.BUSINESSOBJ_TYPE,
         TO_CHAR(BUS.BUSINESSOBJ_ID) BUSINESSOBJ_ID,
         DECODE(BUS.BUSINESSOBJ_TYPE,
                '需求文件',
                BUS.BUSINESSOBJ_ID || '1',
                '技術規範書',
                BUS.BUSINESSOBJ_ID || '2',
                '工作量文件',
                BUS.BUSINESSOBJ_ID || '3',
                '可研委託',
                BUS.BUSINESSOBJ_ID || '0',
                '可研文本/項目建議書',
                BUS.BUSINESSOBJ_ID || '1',
                '可研會審文檔',
                BUS.BUSINESSOBJ_ID || '2',
                '需求上會材料',
                BUS.BUSINESSOBJ_ID || 'XQSH',
                '初步設計變更批覆',
                BUS.BUSINESSOBJ_ID || 'CBSJPF',
                '一階段設計變更批覆',
                BUS.BUSINESSOBJ_ID || 'YJDBGPF',
                '初步設計變更批覆',
                BUS.BUSINESSOBJ_ID || 'CBSJPF',
                '竣工資料',
                BUS.BUSINESSOBJ_ID || 'JGJS',
                '可研變更申請',
                BUS.BUSINESSOBJ_ID || '1',
                '採購附件',
                BUS.BUSINESSOBJ_ID || 'CGFJ',
                '物資附件',
                BUS.BUSINESSOBJ_ID || 'WZFJ',
                TO_CHAR(BUS.BUSINESSOBJ_ID)) BUSINESSOBJ_ID1,
         BOD.CREATORID,
         BUS.EXTEND_1,
         (SELECT V.FULLNAME FROM V_USER_ALL V WHERE V.USERID = BOD.CREATORID) FULLNAME,
         TO_CHAR(BOD.CREATIONDATE, 'YYYY-MM-DD') CREATIONDATE,
         TO_CHAR(BOD.BO_DOCUMENT_ID) BO_DOCUMENT_ID,
         '手工上傳' DOCFROM
    FROM BO_DOCUMENT DOC, BO_DOC_BUSINESSOBJ BUS, BO_DOC_BODY BOD
   WHERE DOC.BO_DOCUMENT_ID = BUS.BO_DOCUMENT_ID
     AND BOD.BO_DOCUMENT_ID = BUS.BO_DOCUMENT_ID
     AND DOC.DELETE_FLAG = '2'),
P_ AS
 (SELECT T.*, RP.GATHERREQUIREMENTID
    FROM BO_PROJECT T, BO_PROJECT_TO_REQUIREMENT RP
   WHERE T.ID = RP.PROJECTID(+)
     AND T.ID = 198268298),
OADOC AS
 (SELECT T.ID,
         T.VERSION,
         T.TITLE,
         T.APPID,
         SUBSTR(T.APPLYDATE, 0, 10) APPLYDATE,
         T.STATUS,
         T.PMBIZCODE,
         T.PMBIZTYPE,
         T.OACODE,
         T.OATITLE,
         T.OADOCUMENTCODE,
         T.OADOCUMENTHYPERLINK,
         DECODE(T.OASTATE, 1, '審批中', 2, '審批完成') OASTATE,
         SUBSTR(OAPUBLISHDATE, 0, 10) OAPUBLISHDATE,
         FILETYPE,
         BT.DATANAME OA_FILETYPE,
         T.UPLOADTYPE,
         T.PMID,
         P.PROJECTNAME,
         P.PARENTID,
         P.ID PROJECTID,
         'OA系統' DOCFROM
    FROM PM_OADATAPROTOCOL_PM T,
         P_ P,
         (SELECT * FROM BO_BASEDATA T WHERE T.DATATYPE = 81) BT
   WHERE (T.PROJECTID = 198268298 OR T.PMBIZCODE = P.GATHERREQUIREMENTID OR
         T.PROJECTID IN (SELECT T.GATHERREQUIREMENTID
                            FROM BO_PROJECT_TO_REQUIREMENT T
                           WHERE T.PROJECTID = 198268298))
     AND T.OASTATE != 3
     AND T.FILETYPE = BT.DATACODE
     AND (T.PROJECTID = TO_CHAR(P.ID) OR T.PMBIZCODE = P.GATHERREQUIREMENTID)),
JDN AS
 (SELECT 'i_1_1_2' JDNAME, TO_CHAR(T.GATHERREQUIREMENTID) || '1' BUSINESSID
    FROM BO_GATHERREQUIREMENT T
   WHERE T.PROJECTID = 198268298
     AND T.STYLE = 'GATHER'
  UNION
  SELECT 'i_1_1_4' JDNAME, TO_CHAR(T.GATHERREQUIREMENTID) || '1' BUSINESSID
    FROM BO_GATHERREQUIREMENT T
   WHERE T.PROJECTID = 198268298
     AND T.STYLE = 'GATHER_SUM'
  UNION
  SELECT 'i_1_1_6' JDNAME, TO_CHAR(T.GATHERREQUIREMENTID) || '2' BUSINESSID
    FROM BO_GATHERREQUIREMENT T
   WHERE T.PROJECTID = 198268298
     AND T.STYLE = 'GATHER_REVIEW'
  UNION
  SELECT 'i_1_2_1' JDNAME, TO_CHAR(T.GATHERREQUIREMENTID) || '3' BUSINESSID
    FROM BO_GATHERREQUIREMENT T
   WHERE T.PROJECTID = 198268298
     AND T.STYLE = 'WORKLOAD_SUM'
  UNION
  SELECT 'i_1_2_3' JDNAME, TO_CHAR(T.GATHERREQUIREMENTID) || '3' BUSINESSID
    FROM BO_GATHERREQUIREMENT T
   WHERE T.PROJECTID = 198268298
     AND T.STYLE = 'WORKLOAD_EVALATE'
  UNION
  SELECT 'i_1_2_5' JDNAME, TO_CHAR(T.GATHERREQUIREMENTID) || '3' BUSINESSID
    FROM BO_GATHERREQUIREMENT T
   WHERE T.PROJECTID = 198268298
     AND T.STYLE = 'WORKLOAD'
  UNION
  SELECT 'i_1_3_2' JDNAME, TO_CHAR(T.ID) BUSINESSID
    FROM BO_SCHEMEEXCHANGE T
   WHERE T.PROJECTID = 198268298
  UNION
  SELECT 'i_1_3_4' JDNAME, TO_CHAR(T.ID) BUSINESSID
    FROM BO_SCHEMEDELIVERY T
   WHERE T.PROJECTID = 198268298
  UNION
  SELECT 'i_1_3_6' JDNAME, TO_CHAR(T.ID) BUSINESSID
    FROM BO_SCHEMEMEETING T
   WHERE T.PROJECTID = 198268298
  UNION
  SELECT 'i_2_1_2' JDNAME, TO_CHAR(T.WORKFLOWSTEPID) || '0' BUSINESSID
    FROM BO_DESIGNCONSIGN T
   WHERE T.DESIGNDEPT IS NOT NULL
     AND T.PROXYTYPE IN (2, 3)
     AND T.PLANPROJECTID = 198268298
  UNION
  SELECT 'i_2_1_2' JDNAME, TO_CHAR(D.BINDID) || '0' BUSINESSID
    FROM BO_DESIGNCONSIGN D, BO_SUPPLIER_INFO BSI
   WHERE TO_CHAR(D.DESIGNDEPT) = TO_CHAR(BSI.BO_SUPPLIER_INFO_ID(+))
     AND D.PLANPROJECTID = 198268298
     AND PROXYTYPE IN (2, 3)
     AND DESIGNDEPT IS NULL
  UNION
  SELECT 'i_2_2_2' JDNAME, TO_CHAR(T.ID) || '1' BUSINESSID
    FROM BO_PROJECTFEASI T
   WHERE T.DELIVERYDATE IS NOT NULL
     AND T.PROJECTID = 198268298
  UNION
  SELECT 'i_2_3_2' JDNAME, TO_CHAR(T.ID) || '2' BUSINESSID
    FROM BO_PROJECTFEASI T
   WHERE T.JUDGEDATE IS NOT NULL
     AND T.PROJECTID = 198268298
  UNION
  SELECT 'i_2_3_4' JDNAME, TO_CHAR(T.BO_FEASI_C_APPLY_ID) || '1' BUSINESSID
    FROM BO_FEASI_C_APPLY T
   WHERE T.PROJECTID = 198268298
  UNION
  SELECT 'i_2_3_6' JDNAME, TO_CHAR(T.BO_FEASI_C_APPLY_ID) BUSINESSID
    FROM BO_FEASI_C_APPLY T
   WHERE T.PROJECTID = 198268298
  UNION
  SELECT 'i_3_1_1' JDNAME, TO_CHAR(T.ID) || 'XQSH' BUSINESSID
    FROM BO_PROJECT T
   WHERE T.ID = 198268298
  UNION
  SELECT 'i_4_1_2' JDNAME, TO_CHAR(D.BINDID) BUSINESSID
    FROM BO_DESIGNCONSIGN D, BO_SUPPLIER_INFO BSI
   WHERE TO_CHAR(D.DESIGNDEPT) = TO_CHAR(BSI.BO_SUPPLIER_INFO_ID(+))
     AND D.PLANPROJECTID = 198268298
     AND PROXYTYPE IN (1, 3)
     AND DESIGNDEPT IS NULL
  UNION
  SELECT 'i_4_2_2' JDNAME, TO_CHAR(T.PMS_DESIGN_SURVEY_ID) BUSINESSID
    FROM PMS_PRJ_DESIGN_SURVEY T
   WHERE T.PROJECT_ID = 198268298
  UNION
  SELECT 'i_4_4_6' JDNAME, TO_CHAR(T.BO_DESIGNONE_ID) BUSINESSID
    FROM BO_DESIGNONE T
   WHERE T.DESGIGNDRAWINGTYPE = 1
     AND T.PROJECTID = 198268298
  UNION
  SELECT 'i_4_4_6' JDNAME,
         TO_CHAR(T.BO_DESIGNREPLY_SUB_ID) || 'YJDBGPF' BUSINESSID
    FROM BO_DESIGNREPLY_SUB T
   WHERE T.CONSTRUCTTYPE = 4
     AND T.PROJECTID = 198268298
  UNION
  SELECT 'i_4_4_6' JDNAME, TO_CHAR(T.BO_DESGIGN_INITIAL_ID) BUSINESSID
    FROM BO_DESGIGN_INITIAL T
   WHERE T.PROJECTID = 198268298
  UNION
  SELECT 'i_4_4_6' JDNAME,
         TO_CHAR(T.BO_DESIGNREPLY_SUB_ID) || 'CBSJPF' BUSINESSID
    FROM BO_DESIGNREPLY_SUB T
   WHERE T.CONSTRUCTTYPE = 6
     AND T.PROJECTID = 198268298
  UNION
  SELECT 'i_4_5_6' JDNAME, TO_CHAR(T.BO_DESGIGN_INITIAL_ID) BUSINESSID
    FROM BO_DESGIGN_INITIAL T
   WHERE T.PROJECTID = 198268298
  UNION
  SELECT 'i_4_5_6' JDNAME,
         TO_CHAR(T.BO_DESIGNREPLY_SUB_ID) || 'CBSJPF' BUSINESSID
    FROM BO_DESIGNREPLY_SUB T
   WHERE T.CONSTRUCTTYPE = 6
     AND T.PROJECTID = 198268298
  UNION
  SELECT 'i_4_6_6' JDNAME, TO_CHAR(T.BO_DESIGNREPLY_SUB_ID) BUSINESSID
    FROM BO_DESIGNREPLY_SUB T
   WHERE T.DESGIGNDRAWINGTYPE = 2
     AND T.PROJECTID = 198268298
  UNION
  SELECT 'i_4_6_6' JDNAME, TO_CHAR(T.BO_DESIGNONE_C_APPLY_ID) BUSINESSID
    FROM BO_DESIGNONE_C_APPLY T
   WHERE T.CONSTRUCTTYPE = 1
     AND T.PROJECTID = 198268298
  UNION
  SELECT 'i_4_6_6' JDNAME, TO_CHAR(T.BO_DESIGNREPLY_SUB_ID) BUSINESSID
    FROM BO_DESIGNREPLY_SUB T
   WHERE T.CONSTRUCTTYPE = 4
     AND T.PROJECTID = 198268298
  UNION
  SELECT 'i_5_1_2' JDNAME, TO_CHAR(T.ID) || '38CGFJ' BUSINESSID
    FROM BO_PROJECT T
   WHERE T.ID = 198268298
  UNION
  SELECT 'i_6_1_2' JDNAME, TO_CHAR(T.ID) || '38WZFJ' BUSINESSID
    FROM BO_PROJECT T
   WHERE T.ID = 198268298
  UNION
  SELECT 'i_7_1_1' JDNAME, TO_CHAR(T.BO_QUALITY_REPORT_ID) BUSINESSID
    FROM BO_QUALITY_REPORT T
   WHERE T.PROJECTID = 198268298
  UNION
  SELECT 'i_7_1_2' JDNAME, TO_CHAR(T.BO_QUALITY_NOTICE_ID) BUSINESSID
    FROM BO_QUALITY_NOTICE T
   WHERE T.PROJECTID = 198268298
  UNION
  SELECT 'i_7_1_4' JDNAME, TO_CHAR(T.BO_QUALITY_NOTICE_ID) BUSINESSID
    FROM BO_QUALITY_NOTICE T
   WHERE T.PROJECTID = 198268298
  UNION
  SELECT 'i_7_1_4' JDNAME, TO_CHAR(T.BO_QUALITY_REPORT_ID) BUSINESSID
    FROM BO_QUALITY_REPORT T
   WHERE T.PROJECTID = 198268298
  UNION
  SELECT 'i_7_2_1' JDNAME, TO_CHAR(T.BO_CONSTRUCTION_S_INFO_ID) BUSINESSID
    FROM BO_CONSTRUCTION_S_INFO T, BO_CONSTRUCTION_START T2
   WHERE T.BO_CONSTRUCTION_START_ID = T2.BO_CONSTRUCTION_START_ID
     AND T2.AUDITSTATE != '1'
     AND T2.PROJECTID = 198268298
  UNION
  SELECT 'i_7_3_1' JDNAME,
         TO_CHAR(WMSYS.WM_CONCAT(T.GATHERREQUIREMENTID)) BUSINESSID
    FROM BO_GATHERREQUIREMENT T, BO_PROJECT P
   WHERE T.PROJECTID = P.ID
     AND T.PROJECTID = 198268298
     AND T.STYLE = 'CONSTRUCTION'
  UNION
  SELECT 'i_7_4_1' JDNAME, TO_CHAR(T.BO_RESOURCE_REQUEST_ID) BUSINESSID
    FROM BO_RESOURCE_REQUEST T
   WHERE T.PROJECTID = 198268298
  UNION
  SELECT 'i_7_5_2' JDNAME, TO_CHAR(P.BO_PROJECT_PAUSE_APPLY_ID) BUSINESSID
    FROM BO_PRO_PROJECT_PAUSE_APPLY PR,
         BO_PROJECT_PAUSE_APPLY     P,
         V_USER_ORG                 V
   WHERE PR.BO_PROJECT_PAUSE_APPLY_ID = P.BO_PROJECT_PAUSE_APPLY_ID
     AND P.CREATE_USERID = V.USERID
     AND PR.PROJECTID = 198268298
  UNION
  SELECT 'i_7_6_2' JDNAME, TO_CHAR(P.BO_PROJECT_RESUME_APPLY_ID) BUSINESSID
    FROM BO_PRO_PROJECT_RESUME_APPLY PR,
         BO_PROJECT_RESUME_APPLY     P,
         V_USER_ORG                  V
   WHERE PR.BO_PROJECT_RESUME_APPLY_ID = P.BO_PROJECT_RESUME_APPLY_ID
     AND P.CREATE_USERID = V.USERID
     AND PR.PROJECTID = 198268298
  UNION
  SELECT 'i_7_7_1' JDNAME, TO_CHAR(T.BO_CONSTRUCTION_TEST_ID) BUSINESSID
    FROM BO_CONSTRUCTION_TEST T
   WHERE T.PROJECTID = 198268298
  UNION
  SELECT 'i_7_8_1' JDNAME, TO_CHAR(T.BO_CONSTRUCTION_ONLINE_ID) BUSINESSID
    FROM BO_CONSTRUCTION_ONLINE T
   WHERE T.PROJECTID = 198268298
  UNION
  SELECT 'i_7_9_1' JDNAME, TO_CHAR(T.BO_CONSTRUCTION_C_INFO_ID) BUSINESSID
    FROM BO_CONSTRUCTION_C_INFO T, BO_CONSTRUCTION_COMPLETION T2
   WHERE T.BO_CONSTRUCTION_COMPLETION_ID = T2.BO_CONSTRUCTION_COMPLETION_ID
     AND T2.AUDITSTATE != '1'
     AND T2.PROJECTID = 198268298
  UNION
  SELECT 'i_8_1_1' JDNAME, TO_CHAR(T.BO_TEC_INSPECTION_ID) BUSINESSID
    FROM BO_TEC_INSPECTION T
   WHERE T.PROJECTID = 198268298
  UNION
  SELECT 'i_8_3_2' JDNAME, TO_CHAR(T.ID) BUSINESSID
    FROM BO_PROJECT T
   WHERE T.ID = 198268298
  UNION
  SELECT 'i_8_3_2' JDNAME, TO_CHAR(T.ID) || 'JGJS' BUSINESSID
    FROM BO_PROJECT T
   WHERE T.ID = 198268298
  UNION
  SELECT 'i_8_4_3' JDNAME, TO_CHAR(T.BINDID) BUSINESSID
    FROM BO_PROJECTEXAMINE T
   WHERE T.PROJECTID = 198268298
  UNION
  SELECT 'i_8_4_3' JDNAME, TO_CHAR(T.BINDID) || '1' BUSINESSID
    FROM BO_PROJECTEXAMINE T, BO_PROJECT BP
   WHERE PROJECTID = 198268298
     AND PROJECTID = BP.ID
  UNION
  SELECT 'i_8_5_1' JDNAME, TO_CHAR(B.ID) BUSINESSID
    FROM BO_PROJECTARCHIVE B, V_USER V
   WHERE B.PROJECTID = 198268298
     AND B.CREATEUSER = V.LOGINNAME
  UNION
  SELECT 'i_8_6_1' JDNAME, TO_CHAR(BO_CONSTRUCTION_RUNNING_ID) BUSINESSID
    FROM BO_CONSTRUCTION_RUNNING T
   WHERE T.PROJECTID = 198268298
  UNION
  SELECT 'i_8_7_2' JDNAME, TO_CHAR(T.ID) || 'JGJS' BUSINESSID
    FROM BO_PROJECT T
   WHERE T.ID = 198268298
  UNION
  SELECT 'i_8_8_3' JDNAME, TO_CHAR(T.BINDID) || '2' BUSINESSID
    FROM BO_PROJECTEXAMINE T
   WHERE T.PROJECTID = 198268298
  UNION
  SELECT 'i_8_8_3' JDNAME, TO_CHAR(T.BINDID) || '2' BUSINESSID
    FROM BO_PROJECTEXAMINE T, BO_PROJECT BP
   WHERE PROJECTID = 198268298
     AND PROJECTID = BP.ID
  UNION
  SELECT 'i_8_9_1' JDNAME,
         TO_CHAR(BO_COMPLETION_RECORD_ID) || '1' BUSINESSID
    FROM BO_COMPLETION_RECORD T
   WHERE T.PROJECTID = 198268298
  UNION
  SELECT 'i_8_9_2' JDNAME, TO_CHAR(BO_COMPLETION_NOTICE_ID) BUSINESSID
    FROM BO_COMPLETION_NOTICE T
   WHERE T.PROJECTID = 198268298
  UNION
  SELECT 'i_8_9_3' JDNAME, TO_CHAR(BO_COMPLETION_RECORD_ID) BUSINESSID
    FROM BO_COMPLETION_RECORD T
   WHERE T.PROJECTID = 198268298
  UNION
  SELECT 'i_9_1_2' JDNAME, TO_CHAR(T.BO_PROJECTAFTEREVALUTE_ID) BUSINESSID
    FROM BO_PROJECTAFTEREVALUTE T
   WHERE T.PROJECTID = 198268298),
JDNE AS
 (SELECT *
    FROM BO_ITFILE_PHASE
  MINUS
  SELECT *
    FROM BO_ITFILE_PHASE B
   WHERE B.BO_ITFILE_PHASE_ID LIKE 'i_4_4%'
      OR B.BO_ITFILE_PHASE_ID LIKE 'i_4_5_3'
      OR B.BO_ITFILE_PHASE_ID LIKE 'i_4_5_4'
      OR B.BO_ITFILE_PHASE_ID LIKE 'i_4_6_3'
      OR B.BO_ITFILE_PHASE_ID LIKE 'i_4_6_4'),
JDNEOA AS
 (SELECT *
    FROM BO_ITFILE_PHASE
  MINUS
  SELECT *
    FROM BO_ITFILE_PHASE B
   WHERE B.BO_ITFILE_PHASE_ID LIKE 'i_4_4%'
      OR B.BO_ITFILE_PHASE_ID LIKE 'i_4_5_3'
      OR B.BO_ITFILE_PHASE_ID LIKE 'i_4_5_4'
      OR B.BO_ITFILE_PHASE_ID LIKE 'i_4_6_3'
      OR B.BO_ITFILE_PHASE_ID LIKE 'i_4_6_4'
      OR B.BO_ITFILE_PHASE_ID LIKE 'i_1_2_2'
      OR B.BO_ITFILE_PHASE_ID LIKE 'i_1_2_3'
      OR B.BO_ITFILE_PHASE_ID LIKE 'i_2_3_1'
      OR B.BO_ITFILE_PHASE_ID LIKE 'i_2_3_3'),
REFD AS
 (SELECT N.JDNAME, N.BUSINESSID, F.*
    FROM FILEDOC F, JDN N
   WHERE F.BUSINESSOBJ_ID1 = N.BUSINESSID)
SELECT R.*
  FROM (SELECT *
          FROM (SELECT D.BO_ITFILE_PHASE_ID BO_ID,
                       D.JIEDUAN,
                       D.JDNAME,
                       D.SEQ,
                       D.BITIAN,
                       F.FILENAME FILETITLE,
                       '' OADOCUMENTCODE,
                       '' OACODE,
                       F.BUSINESSOBJ_TYPE FILETYPE,
                       F.CREATIONDATE APPLYDATE,
                       '' OASTATE,
                       '' OAPUBLISHDATE,
                       F.FULLNAME CREATE_USER,
                       '手工上傳' DOCFROM,
                       '1' TYPE_,
                       F.BO_DOC_BODY_ID,
                       F.BUSINESSOBJ_ID,
                       F.BO_DOCUMENT_ID,
                       F.CREATORID,
                       F.EXTEND_1,
                       '' ID_
                  FROM JDNE D, REFD F
                 WHERE D.BO_ITFILE_PHASE_ID = F.JDNAME(+)
                   AND D.BELONG = '1'
                UNION
                SELECT D.BO_ITFILE_PHASE_ID BO_ID,
                       D.JIEDUAN,
                       D.JDNAME,
                       D.SEQ,
                       D.BITIAN,
                       F.FILENAME FILETITLE,
                       '' OADOCUMENTCODE,
                       '' OACODE,
                       F.BUSINESSOBJ_TYPE FILETYPE,
                       F.CREATIONDATE APPLYDATE,
                       '' OASTATE,
                       '' OAPUBLISHDATE,
                       F.FULLNAME CREATE_USER,
                       '手工上傳' DOCFROM,
                       '1' TYPE_,
                       F.BO_DOC_BODY_ID,
                       F.BUSINESSOBJ_ID,
                       F.BO_DOCUMENT_ID,
                       F.CREATORID,
                       F.EXTEND_1,
                       '' ID_
                  FROM JDNE D, REFD F
                 WHERE D.BO_ITFILE_PHASE_ID = F.JDNAME(+)
                   AND D.BELONG = '1'
                   AND F.BUSINESSOBJ_TYPE IN D.BUSINESSOBJ_TYPE
                UNION
                SELECT D.BO_ITFILE_PHASE_ID BO_ID,
                       D.JIEDUAN,
                       D.JDNAME,
                       D.SEQ,
                       D.BITIAN,
                       E.OATITLE,
                       E.OADOCUMENTCODE,
                       E.OACODE,
                       E.OA_FILETYPE,
                       E.APPLYDATE,
                       E.OASTATE,
                       E.OAPUBLISHDATE,
                       '' CREATE_USER,
                       E.DOCFROM,
                       '2' TYPE_,
                       '' BO_DOC_BODY_ID,
                       '' BUSINESSOBJ_ID,
                       '' BO_DOCUMENT_ID,
                       '' CREATORID,
                       '' EXTEND_1,
                       TO_CHAR(E.ID_) ID_
                  FROM JDNEOA D,
                       (SELECT D.BO_ITFILE_PHASE_ID BO_ID,
                               D.JIEDUAN,
                               D.JDNAME,
                               D.SEQ,
                               D.BITIAN,
                               OA.OATITLE,
                               OA.OADOCUMENTCODE,
                               OA.OACODE,
                               OA.OA_FILETYPE,
                               OA.APPLYDATE,
                               OA.OASTATE,
                               OA.OAPUBLISHDATE,
                               '' CREATE_USER,
                               DECODE(OA.UPLOADTYPE, '1', 'OA系統', '手工上傳') DOCFROM,
                               '2' TYPE_,
                               '' BO_DOC_BODY_ID,
                               '' BUSINESSOBJ_ID,
                               '' BO_DOCUMENT_ID,
                               '' CREATORID,
                               '' EXTEND_1,
                               TO_CHAR(OA.ID) ID_
                          FROM JDNEOA D, OADOC OA
                         WHERE D.PMBIZTYPE = OA.PMBIZTYPE(+)
                           AND D.BELONG = '2'
                           AND D.OATYPE LIKE '%,' || OA.OA_FILETYPE || '%') E
                 WHERE D.BO_ITFILE_PHASE_ID = E.BO_ID(+)
                   AND D.BELONG = '2'
                UNION
                SELECT D.BO_ITFILE_PHASE_ID BO_ID,
                       D.JIEDUAN,
                       D.JDNAME,
                       D.SEQ,
                       D.BITIAN,
                       E.OATITLE,
                       E.OADOCUMENTCODE,
                       E.OACODE,
                       E.OA_FILETYPE,
                       E.APPLYDATE,
                       E.OASTATE,
                       E.OAPUBLISHDATE,
                       '' CREATE_USER,
                       E.DOCFROM,
                       '2' TYPE_,
                       '' BO_DOC_BODY_ID,
                       '' BUSINESSOBJ_ID,
                       '' BO_DOCUMENT_ID,
                       '' CREATORID,
                       '' EXTEND_1,
                       TO_CHAR(E.ID_) ID_
                  FROM JDNE D,
                       (SELECT D.BO_ITFILE_PHASE_ID BO_ID,
                               D.JIEDUAN,
                               D.JDNAME,
                               D.SEQ,
                               D.BITIAN,
                               OA.OATITLE,
                               OA.OADOCUMENTCODE,
                               OA.OACODE,
                               OA.OA_FILETYPE,
                               OA.APPLYDATE,
                               OA.OASTATE,
                               OA.OAPUBLISHDATE,
                               '' CREATE_USER,
                               DECODE(OA.UPLOADTYPE, '1', 'OA系統', '手工上傳') DOCFROM,
                               '2' TYPE_,
                               '' BO_DOC_BODY_ID,
                               '' BUSINESSOBJ_ID,
                               '' BO_DOCUMENT_ID,
                               '' CREATORID,
                               '' EXTEND_1,
                               TO_CHAR(OA.ID) ID_
                          FROM (SELECT *
                                  FROM JDNE B
                                 WHERE B.BO_ITFILE_PHASE_ID = 'i_1_2_2') D,
                               OADOC OA
                         WHERE D.PMBIZTYPE = OA.PMBIZTYPE(+)
                           AND OA.OA_FILETYPE = '公司發文'
                           AND OA.PMBIZCODE =
                               (SELECT T.GATHERREQUIREMENTID
                                  FROM BO_GATHERREQUIREMENT T
                                 WHERE T.PROJECTID = 198268298
                                   AND T.STYLE = 'WORKLOAD_EVALATE')) E
                 WHERE D.BO_ITFILE_PHASE_ID = E.BO_ID(+)
                   AND D.BELONG = '2'
                   AND D.BO_ITFILE_PHASE_ID = 'i_1_2_2'
                UNION
                SELECT D.BO_ITFILE_PHASE_ID BO_ID,
                       D.JIEDUAN,
                       D.JDNAME,
                       D.SEQ,
                       D.BITIAN,
                       E.OATITLE,
                       E.OADOCUMENTCODE,
                       E.OACODE,
                       E.OA_FILETYPE,
                       E.APPLYDATE,
                       E.OASTATE,
                       E.OAPUBLISHDATE,
                       '' CREATE_USER,
                       E.DOCFROM,
                       '2' TYPE_,
                       '' BO_DOC_BODY_ID,
                       '' BUSINESSOBJ_ID,
                       '' BO_DOCUMENT_ID,
                       '' CREATORID,
                       '' EXTEND_1,
                       TO_CHAR(E.ID_) ID_
                  FROM JDNE D,
                       (SELECT D.BO_ITFILE_PHASE_ID BO_ID,
                               D.JIEDUAN,
                               D.JDNAME,
                               D.SEQ,
                               D.BITIAN,
                               OA.OATITLE,
                               OA.OADOCUMENTCODE,
                               OA.OACODE,
                               OA.OA_FILETYPE,
                               OA.APPLYDATE,
                               OA.OASTATE,
                               OA.OAPUBLISHDATE,
                               '' CREATE_USER,
                               DECODE(OA.UPLOADTYPE, '1', 'OA系統', '手工上傳') DOCFROM,
                               '2' TYPE_,
                               '' BO_DOC_BODY_ID,
                               '' BUSINESSOBJ_ID,
                               '' BO_DOCUMENT_ID,
                               '' CREATORID,
                               '' EXTEND_1,
                               TO_CHAR(OA.ID) ID_
                          FROM (SELECT *
                                  FROM JDNE B
                                 WHERE B.BO_ITFILE_PHASE_ID = 'i_1_2_4') D,
                               OADOC OA
                         WHERE D.PMBIZTYPE = OA.PMBIZTYPE(+)
                           AND OA.PMBIZCODE =
                               (SELECT T.GATHERREQUIREMENTID
                                  FROM BO_GATHERREQUIREMENT T
                                 WHERE T.PROJECTID = 198268298
                                   AND T.STYLE = 'WORKLOAD')
                           AND OA.OA_FILETYPE = '公司發文') E
                 WHERE D.BO_ITFILE_PHASE_ID = E.BO_ID(+)
                   AND D.BELONG = '2'
                   AND D.BO_ITFILE_PHASE_ID = 'i_1_2_4'
                UNION
                SELECT D.BO_ITFILE_PHASE_ID BO_ID,
                       D.JIEDUAN,
                       D.JDNAME,
                       D.SEQ,
                       D.BITIAN,
                       E.OATITLE,
                       E.OADOCUMENTCODE,
                       E.OACODE,
                       E.OA_FILETYPE,
                       E.APPLYDATE,
                       E.OASTATE,
                       E.OAPUBLISHDATE,
                       '' CREATE_USER,
                       E.DOCFROM,
                       '2' TYPE_,
                       '' BO_DOC_BODY_ID,
                       '' BUSINESSOBJ_ID,
                       '' BO_DOCUMENT_ID,
                       '' CREATORID,
                       '' EXTEND_1,
                       TO_CHAR(E.ID_) ID_
                  FROM JDNE D,
                       (SELECT D.BO_ITFILE_PHASE_ID BO_ID,
                               D.JIEDUAN,
                               D.JDNAME,
                               D.SEQ,
                               D.BITIAN,
                               OA.OATITLE,
                               OA.OADOCUMENTCODE,
                               OA.OACODE,
                               OA.OA_FILETYPE,
                               OA.APPLYDATE,
                               OA.OASTATE,
                               OA.OAPUBLISHDATE,
                               '' CREATE_USER,
                               DECODE(OA.UPLOADTYPE, '1', 'OA系統', '手工上傳') DOCFROM,
                               '2' TYPE_,
                               '' BO_DOC_BODY_ID,
                               '' BUSINESSOBJ_ID,
                               '' BO_DOCUMENT_ID,
                               '' CREATORID,
                               '' EXTEND_1,
                               TO_CHAR(OA.ID) ID_
                          FROM (SELECT *
                                  FROM JDNE B
                                 WHERE B.BO_ITFILE_PHASE_ID = 'i_2_3_1') D,
                               OADOC OA
                         WHERE D.PMBIZTYPE = OA.PMBIZTYPE(+)
                           AND OA.PMBIZCODE = '198268298'
                           AND OA.OA_FILETYPE = '會議紀要') E
                 WHERE D.BO_ITFILE_PHASE_ID = E.BO_ID(+)
                   AND D.BELONG = '2'
                   AND D.BO_ITFILE_PHASE_ID = 'i_2_3_1'
                UNION
                SELECT D.BO_ITFILE_PHASE_ID BO_ID,
                       D.JIEDUAN,
                       D.JDNAME,
                       D.SEQ,
                       D.BITIAN,
                       E.OATITLE,
                       E.OADOCUMENTCODE,
                       E.OACODE,
                       E.OA_FILETYPE,
                       E.APPLYDATE,
                       E.OASTATE,
                       E.OAPUBLISHDATE,
                       '' CREATE_USER,
                       E.DOCFROM,
                       '2' TYPE_,
                       '' BO_DOC_BODY_ID,
                       '' BUSINESSOBJ_ID,
                       '' BO_DOCUMENT_ID,
                       '' CREATORID,
                       '' EXTEND_1,
                       TO_CHAR(E.ID_) ID_
                  FROM JDNE D,
                       (SELECT D.BO_ITFILE_PHASE_ID BO_ID,
                               D.JIEDUAN,
                               D.JDNAME,
                               D.SEQ,
                               D.BITIAN,
                               OA.OATITLE,
                               OA.OADOCUMENTCODE,
                               OA.OACODE,
                               OA.OA_FILETYPE,
                               OA.APPLYDATE,
                               OA.OASTATE,
                               OA.OAPUBLISHDATE,
                               '' CREATE_USER,
                               DECODE(OA.UPLOADTYPE, '1', 'OA系統', '手工上傳') DOCFROM,
                               '2' TYPE_,
                               '' BO_DOC_BODY_ID,
                               '' BUSINESSOBJ_ID,
                               '' BO_DOCUMENT_ID,
                               '' CREATORID,
                               '' EXTEND_1,
                               TO_CHAR(OA.ID) ID_
                          FROM (SELECT *
                                  FROM JDNE B
                                 WHERE B.BO_ITFILE_PHASE_ID = 'i_2_3_3') D,
                               OADOC OA
                         WHERE D.PMBIZTYPE = OA.PMBIZTYPE(+)
                           AND OA.PMBIZCODE IN
                               (SELECT T.BO_FEASI_C_APPLY_ID
                                  FROM BO_FEASI_C_APPLY T
                                 WHERE T.PROJECTID = 198268298)
                           AND OA.OA_FILETYPE = '公司發文') E
                 WHERE D.BO_ITFILE_PHASE_ID = E.BO_ID(+)
                   AND D.BELONG = '2'
                   AND D.BO_ITFILE_PHASE_ID = 'i_2_3_3') A
         ORDER BY A.SEQ, A.TYPE_ DESC) R
 WHERE 1 = 1

這上面的SQL是打印出來的SQL,上面還有很多嵌套判斷。這裏面不是一點點的噁心,可以看看裏面有多少個臨時表拼接來的結果。查詢的速度那是慢的不行,所以這裏面也沒有考慮什麼多少個子查詢。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章