现在有六个表作全外连接,报错ORA-03113和ORA-03114,如果注释掉BCDEF中的任意一个,执行都没有问题,各位大侠,帮帮我!
SQL如下:SELECT
 A.PLAN_MONTH AS PLAN_MONTH,
 B.IN_DAY AS IN_DAY,
 C.IN_MONTH AS IN_MONTH,
 D.FINISHED AS FINISHED,
 D.SEMIS AS SEMIS,
 E.OUT_DAY AS OUT_DAY,
 F.OUT_MONTH AS OUT_MONTH
FROM
 (SELECT SIDELINE_CODE AS CODE,sideline_code||'1' as codea,PLAN AS PLAN_MONTH
  FROM TBL_PA_PROD_SCHEDULE SCHEDULE
  WHERE SIDELINE_CODE='P_KER'
  AND REPORT_DATE='2008-01'
 )A
 full outer join
 (SELECT ITEM_CODE AS CODE,DAILY_DATA AS IN_DAY
  FROM TBL_PA_OIL_POWERCOST_DAILY
  WHERE ITEM_CODE='P_KER'
  AND REPORT_DATE='2008-01-23'
 )B
 on a.code=b.code
 full outer join
 (SELECT ITEM_CODE AS CODE,SUM(DAILY_DATA) AS IN_MONTH
  FROM TBL_PA_OIL_POWERCOST_DAILY
  WHERE ITEM_CODE='P_KER'
  AND REPORT_DATE>='2008-01-01'
  AND REPORT_DATE<='2008-01-23'
  GROUP BY ITEM_CODE
 )C
 on a.code=c.code
 full outer join
 (SELECT
   T_A.PRODUCT_CODE AS CODE,
   SUM(DECODE(T_A.STATUS,'ºÏ¸ñ',T_A.QUALITY,0)) AS FINISHED,
   SUM(DECODE(T_A.STATUS,'ºÏ¸ñ',0,T_A.QUALITY)) AS SEMIS
  FROM TBL_TANK_QUALITY_CAL T_A,
       (SELECT MAX(CHECK_RULER_DATE) AS RULER_DATE,TANK_ID
        FROM TBL_TANK_QUALITY_CAL
        WHERE CHECK_RULER_DATE<=TO_DATE('2008-01-23 4:00:00','YYYY-MM-DD HH24:MI:SS')
        GROUP BY TANK_ID
       )T_B
  WHERE T_A.TANK_ID=T_B.TANK_ID
  AND T_A.CHECK_RULER_DATE=T_B.RULER_DATE
  AND SUBSTR(T_B.TANK_ID,1,4)='TK_S' 
  AND T_A.PRODUCT_CODE='P_KER'
  GROUP BY T_A.PRODUCT_CODE
 )D
 on a.code=d.code
 full outer join
 (SELECT ITEM_CODE AS CODE,DAILY_DATA AS OUT_DAY
  FROM TBL_PA_OIL_POWERCOST_DAILY
  WHERE ITEM_CODE='P_KER'||'1'
  AND REPORT_DATE='2008-01-23'
 )E
 on a.codea=e.code
 full outer join
 (SELECT ITEM_CODE AS CODE,SUM(DAILY_DATA) AS OUT_MONTH
  FROM TBL_PA_OIL_POWERCOST_DAILY
  WHERE ITEM_CODE='P_KER'||'1'
  AND REPORT_DATE>='2008-01-01'
  AND REPORT_DATE<='2008-01-23'
  GROUP BY ITEM_CODE
 )F
 on a.codea=f.code