Я получил ошибку при выполнении кода ниже - ниже приведен пример для вашей справки.
BRDB.EXPORT SHIPMENT (таблица базы данных)
SHPMNT_REF | SHIPMENT_TYPE
123 | EHO
456 | EHO
789 | EHO
BRDB.EVENT_CODE (таблица базы данных)
FILE_NO | REMARKS EVENT_CODE
123 | TEST0 SIR
123 | TEST1 SIR
123 | TEST2 SIR
456 | TEST3 SIR
789 | TEST4 EEO
То, что я хочу показать в отчете, похоже на
FILE NO | REMARKS
123 | TEST0,TEST1,TEST2
456 | TEST3
Ниже приведено мое кодирование
select min(X.SHPMNT_REF) as "House B/L #",
listagg(case when SIR = 1 then X.REMARKS end, ',') within group (order by X.SHPMNT_REF) as "REMARKS(from SIR Event)"
FROM (select ES.SHPMNT_REF,
(select EE.REMARKS,
row_number() over (order by EE.FILE_NO)
FROM BRDB.EXPORT_EVENT EE
where EE.FILE_NO = ES.SHPMNT_REF
and EE.EVENT_CODE = 'SIR') as SIR
from BRDB.EXPORT_SHIPMENT ES)X
GROUP BY X.SHPMNT_REF
Ниже приведена ошибка, которую я получил.
Multiple columns are returned from a subquery that is allowed only one column.. SQLCODE=-412, SQLSTATE=42823, DRIVER=4.19.49. 2) [Code: -727, SQL State: 56098] An error occurred during implicit system action type "2". Information returned for the error includes SQLCODE "-412", SQLSTATE "42823" and message tokens "".