moin
afür würde ich den wert noch mal mit einer zweiten case anweisung muplizieren, sprich wenn die art des spiels A entspricht, dann multiplizere mit anzahl der user, sonst 1
Anzahl der user = LENGTH(USER) - LENGTH(REPLACE(USER, ',', '')) + 1
PS: kann sein, dass die funktionen bei mysql in wenig anders heißen, z.b. nicht LENGTH, sondern LEN, musst du halt schauen
Ilja
Hallo Ilja,
wir haben in etwa zeitgleich gepostet, daher habe ich meine Antwort unter Vinzenz' Post geschrieben, sie würde aber auch gut hierher passen.
Danke für den Tip, ich bin fast zeitgleich darauf gestoßen.
Aber genauso klappt es:
SELECT
sum(Punkte*
(CASE
WHEN Multi = 'ja' THEN 1
WHEN Multi = '' THEN 1
WHEN Multi = '100' THEN 1
WHEN Multi = '150' THEN 1.50
WHEN Multi = '200' THEN 2.00
WHEN Multi = 'nein' THEN 0
WHEN ISNULL(Multi) THEN 1
END)
*
(CASE
WHEN Art = "F" THEN 1
WHEN ART = "T" THEN 1
WHEN Art = "A" THEN (LENGTH(User) - LENGTH(REPLACE(User, ',', ''))+1)
END
)
) AS points
FROM Tabelle
WHERE
ID=2
Gruß, Sigmar