Hi,
I am getting an error from this query and I do not no why. The error is:
"[IBM][System i Access ODBC Driver][DB2 for i5/OS]SQL0901 - SQL system error".
Each query alone is working but when I try to join I get this error. Here is the code:
WITH
MASTER
AS
(
SELECT
IDISC, TCAT, IDSCO,
SUM(TVLS) AS SALES_UAH,
SUM(TTRNQ) AS SALES_QTY
FROM GALF6HK.IT
LEFT JOIN GALF6HK.II ON TCAT = ICAT
WHERE (TTYPE In ('BD','BC'))
AND (TSAL='Y')
AND (TYPE Not In ('T'))
AND (TTRN Between 20120101 And 20121231)
GROUP BY IDISC, TCAT, IDSCO
),
PL
AS
(
SELECT
DDCAT,
MAX(CASE WHEN DDPRN = 1 THEN DDVUL ELSE 0 END) AS PL1,
MAX(CASE WHEN DDPRN = 2 THEN DDVUL ELSE 0 END) AS PL2
FROM GALF6HK.DD
GROUP BY DDCAT
HAVING MAX(CASE WHEN DDPRN = 1 THEN DDVUL ELSE 0 END)>0
OR MAX(CASE WHEN DDPRN = 2 THEN DDVUL ELSE 0 END)>0
)
SELECT
IDISC, TCAT, IDSCO,
SALES_UAH,
SALES_QTY
FROM MASTER
LEFT JOIN PL ON DDCAT = TCAT
I am getting an error from this query and I do not no why. The error is:
"[IBM][System i Access ODBC Driver][DB2 for i5/OS]SQL0901 - SQL system error".
Each query alone is working but when I try to join I get this error. Here is the code:
WITH
MASTER
AS
(
SELECT
IDISC, TCAT, IDSCO,
SUM(TVLS) AS SALES_UAH,
SUM(TTRNQ) AS SALES_QTY
FROM GALF6HK.IT
LEFT JOIN GALF6HK.II ON TCAT = ICAT
WHERE (TTYPE In ('BD','BC'))
AND (TSAL='Y')
AND (TYPE Not In ('T'))
AND (TTRN Between 20120101 And 20121231)
GROUP BY IDISC, TCAT, IDSCO
),
PL
AS
(
SELECT
DDCAT,
MAX(CASE WHEN DDPRN = 1 THEN DDVUL ELSE 0 END) AS PL1,
MAX(CASE WHEN DDPRN = 2 THEN DDVUL ELSE 0 END) AS PL2
FROM GALF6HK.DD
GROUP BY DDCAT
HAVING MAX(CASE WHEN DDPRN = 1 THEN DDVUL ELSE 0 END)>0
OR MAX(CASE WHEN DDPRN = 2 THEN DDVUL ELSE 0 END)>0
)
SELECT
IDISC, TCAT, IDSCO,
SALES_UAH,
SALES_QTY
FROM MASTER
LEFT JOIN PL ON DDCAT = TCAT