Lukas.: mysql: Verschachtelte IF/CASE Query läuft nicht

Beitrag lesen

Hallo,

ich habe eine Query, die ich erweitern möchte:

SELECT 
sum(
(CASE 
WHEN (b.PM = 0 AND b.PA = 'Z') THEN 0
WHEN (b.PM = 0 AND b.PA = 'K') THEN 0
WHEN b.PM = 0 THEN 1
ELSE
b.PM
END)
*Preis
*
...

Nun möchte ich, diesen Teil erweitern:

(CASE 
WHEN (b.PM = 0 AND b.PA = 'Z') THEN 0
WHEN (b.PM = 0 AND b.PA = 'K') THEN 0
WHEN b.PM = 0 THEN 1
ELSE
b.PM
END)
*Preis

Es soll für den Fall, dass (b.PMAW > 0) ist, folgender Code in der Query abgefragt wird:

(CASE 
WHEN (b.PM = 0 AND b.PA = 'Z') THEN 0
WHEN (b.PM = 0 AND b.PA = 'K') THEN 0
WHEN b.PM = 0 THEN 1
ELSE
b.PM
END)
*Preis

Also dachte ich mir, ich füge eine verschachtelte Bedingung ein:

SELECT 
sum(

IF (b.PMAW > 0) THEN
(CASE 
WHEN (b.PM = 0 AND b.PA = 'Z') THEN 0
WHEN (b.PM = 0 AND b.PA = 'K') THEN 0
WHEN b.PM = 0 THEN 1
ELSE
b.PM
END)
*Preis

ELSE

(CASE 
WHEN (b.PM = 0 AND b.PA = 'Z') THEN 0
WHEN (b.PM = 0 AND b.PA = 'K') THEN 0
WHEN b.PM = 0 THEN 1
ELSE
b.PM
END)
*Preis

END IF

*

Aber weder diese Query mit der IF-Bedingung, noch mein vorheriger Versuch mit einer weiteren CASE-THEN-END Bedingung laufen.

Wie kann ich mein Vorhaben umsetzen, bzw. was amche ich falsch?

L.