0
Я получаю эту ошибку, когда я пытаюсь выполнить этот запрос будетdb2 SQLSTATE 42972 ошибка
INSERT INTO
AGG_QUALITY
SELECT
QIF.DATEDM_ID,
'Status' AS BREAKDOWN_TYPE,
HCR.VALUE,
QIF.SCANDEFINITION_ID,
QIF.QUALITYISSUE_VALUE,
COUNT(QIF.QUALITYISSUEFACT_ID),
COUNT(QRF.QUALITYRESOLUTIONFACT_ID)
FROM
QUALITYISSUEFACT QIF,
HUBCODERECORD HCR,
ITEMSTATUS ITS
LEFT JOIN
QUALITYRESOLUTIONFACT QRF
ON
QIF.QUALITYISSUEFACT_ID = QRF.QUALITYISSUEFACT_ID
WHERE
QIF.DATEDM_ID > startDateDMId
AND QIF.DATEDM_ID <= endDateDMId
AND HCR.CODE = ITS.H_STATUS_TYPE
AND QIF.DIMENSION_ROM_PK = ITS.ITEMMASTER_ID
GROUP BY
QIF.DATEDM_ID, HCR.VALUE, QIF.SCANDEFINITION_ID, QIF.QUALITYISSUE_VALUE
;
DB21034E Команда была обрабатывались как оператор SQL, поскольку она не была допустимой командой процессора командной строки. Во время обработки SQL он возвращался: SQL0338N Предложение ON, связанное с оператором JOIN или в операторе MERGE , недействительно. НОМЕР ЛИНИИ = 31. SQLSTATE = 42972
Не архаичные неявным соединяется с чистым современной 'join' синтаксисом. Вероятно, это поможет решить вашу проблему. Простое правило: просто укажите «Нет» в запятую в разделе 'from'. –
Можете ли вы подтвердить, что столбец 'QUALITYISSUEFACT_ID' существует в таблицах' QUALITYISSUEFACT' и 'QUALITYRESOULTIONFACT'? –
да, он существует. –