LEFT JOIN no DB2
Meu código (abreviado) é:
SELECT *
FROM
ASSESSMENT A
LEFT JOIN FINANCE F0
ON F0.CLIENT = A.CLIENT
AND F0.FIELD_CODE = 1
AND F0.EVNT_SQNBR =
(SELECT MAX(FX.EVNT_SQNBR)
FROM
FINANCE FX, CROSSREF Y
WHERE
Y.CLIENT = A.CLIENT
AND Y.ASMT_TCD = A.ASMT_TCD
AND Y.ASMT_TY_SQNBR = A.ASMT_TY_SQNBR
AND FX.CLIENT_ID = A.CLIENT
AND FX.FIELD_CODE = F0.FIELD_CODE
AND FX.BUS_LN_SQNBR = F0.BUS_LN_SQNBR
AND FX.EVNT_SQNBR = Y.EVNT_SQNBR)
LEFT JOIN FINANCE F1 (SAME CODE HERE EXCEPT F1.FIELD_CODE IS DIFFERENT)
...
LEFT JOIN FINANCE F2 (SAME CODE HERE EXCEPT F2.FIELD_CODE IS DIFFERENT)
E assim por diante.
A questão é que a cláusula -338 ON é inválida. Para todas as linhas (inclusive) começando com AND F0.EVNT_SQNBR = ...
Alguma idéia do porquê e como corrigi-lo?