Auf Thema antworten

Vermutlich kannst du das kürzen auf :

[CODE]

SELECT

H01.OLPRDC,

sum(CASE WHEN H04.OHODAT BETWEEN 20230105 AND 20230405 THEN H01.OLITET ELSE 0 END) AS "Umsatz Aktion",

sum(CASE WHEN H04.OHODAT BETWEEN 20230105 AND 20230405 THEN H01.OLOQTY ELSE 0 END) AS "Menge Aktion",

sum(CASE WHEN H04.OHODAT BETWEEN 20230305 AND 20230405 THEN H01.OLITET ELSE 0 END) AS "Umsatz Vergleich",

sum(CASE WHEN H04.OHODAT BETWEEN 20230305 AND 20230405 THEN H01.OLOQTY ELSE 0 END) AS "Menge Vergleich"

FROM

FRI510AFWF.SROORSPL H01

JOIN FRI510AFWF.SRONAM H02 ON

H01.OLCUNO = H02.NANUM

JOIN FRI510AFWF.SRBSOH H04 ON

H01.OLORNO = H04.OHORNO

JOIN FRI510AF.SROPRG H06 ON

H01.OLPRDC = H06.PGPRDC

JOIN FRI510AF.SRBCTLD1 H03 ON

H01.OLORDT = H03.CTOTYP

WHERE

( H04.OHODAT BETWEEN 20230105 AND 20230405 --Aktionszeitraum

OR H04.OHODAT BETWEEN 20230305 AND 20230405 ) --Vergleichzeitraum

AND H01.OLSTAT <> 'D'

AND H01.OLIORD = 'N'

AND H01.OLORDT NOT IN ('IV', 'IS', 'BL', 'IG', 'V4', 'IU')

AND H02.NACOUN IN ('DE')

AND H04.OHHAND <> 'PSHOP'

AND H01.OLPRDC IN('38099478', '11046624')

GROUP BY

H01.OLPRDC;[/CODE]

BETWEEN vergleicht übrigens Zahlen oder Datumswerte, das heißt hier wird konvertiert. Daher habe ich mal die Anführungszeichen weg gelassen, die Spalte wird ggf. noch konvertiert.


Zurück
Oben