oracle函數創建Job自動執行,某天發現job失敗
於是去排查
MERGE INTO WMS_YWL_WLKCBB Y
USING (SELECT C.ZONE_ID,
C.AREA_ID,
C.MODEL,
C.MAT_NO,
C.MAT_TYPE,
NVL(SUM(C.NOW_STOCKS), 0) NOW_STOCKS
FROM (SELECT T.ZONE_ID,
B.AREA_ID,
DECODE(T.MODEL, '1', MM.MACHINE_NO, T.MODEL) MODEL,
T.MAT_NO,
T.MAT_TYPE,
T.NOW_STOCKS
FROM YCL_STOCKS_BALANCE T,
B_MAT M,
B_MAT_MACHINE MM,
B_STORAGE B
WHERE T.MAT_NO = M.MAT_NO
AND T.MAT_NO = MM.MAT_NO
AND T.STORAGE_NO = B.STORAGE_NO
AND B.STORESHAPE_ID = 'A'
AND M.QF_MATERIAL = 'N'
AND T.THE_DATE = TRUNC(SYSDATE) - 1) C
GROUP BY C.ZONE_ID,
C.AREA_ID,
C.MODEL,
C.MAT_NO,
C.MAT_TYPE) S
ON (Y.ZONE_ID = S.ZONE_ID AND Y.AREA_ID = S.AREA_ID AND Y.MODEL = S.MODEL AND Y.MAT_NO = S.MAT_NO AND Y.MAT_TYPE = S.MAT_TYPE AND Y.THE_DATE = TRUNC(SYSDATE) - 1)
WHEN MATCHED THEN
UPDATE SET Y.QJC_LP = Y.QJC_LP + S.NOW_STOCKS;
網上查了很多都说可能是数据库的事儿