Ich habe diese SQL SELECT-Abfrage.SQL wie CASE unter SELECT-Abfrage auf eine Variable zuweisen?
SELECT STOCK
,QTY*PRICE AS 'TOTAL'
,(QTY*PRICE)*RATE AS 'VALUATION'
,((QTY*PRICE)*RATE)+1 AS 'ADD_VALUATION'
,CASE WHEN GRP = 'A' THEN 100 - isnull(LDP_A,0)
WHEN GRP = 'B' THEN 100 - isnull(LDP_B,0)
WHEN GRP = 'C' THEN 100 - isnull(LDP_C,0)
-- TO Z
END AS 'LDP'
,(((QTY*PRICE)*RATE)+1)
/
(CASE WHEN GRP = 'A' THEN 100 - isnull(LDP_A,0)
WHEN GRP = 'B' THEN 100 - isnull(LDP_B,0)
WHEN GRP = 'C' THEN 100 - isnull(LDP_C,0)
-- TO Z
END) * RATE AS HTC
FROM STOCKBL
Gibt es eine Möglichkeit, diese Redundanz von Anweisungen zu bereinigen? Wie kann ich den CASE einer Variablen zuweisen, so kann ich dies durch saubereren Code ersetzen.
Ist das für MySQL oder SQL Server? –
@GiorgosBetsos es ist SQL Server. Entschuldigung – theo
Was ist GRP im Fall? – Rajan