Hallo,
"SELECT user, money, konto IF(konto >= 0,(money + konto) AS cash, money AS cash) FROM ".TBL_STATS." ORDER BY cash DESC LIMIT 10"
sollte das funktionieren? bei mir funzt es leider net, wie könnte ich das sonst machen???
Du möchtest den Spaltenaliasnamen für den gesamten IF-Ausdruck verwenden und nicht für die Teilausdrücke.
SELECT
user,
money,
konto -- hier fehlt bei Dir ein Komma
-- müsste zu einer entsprechenden Fehlermeldung führen.
-- *Ich* verwende *nie* AS um einen Spaltenaliasnamen zu kennzeichnen
-- weil es nicht nur optional ist, sondern in manchen DBMS gar nicht
-- erlaubt ist.
IF( konto >= 0, (money + konto), money ) cash
FROM
tabelle
ORDER BY
cash
DESC
LIMIT
10
Siehe auch Handbuch, Problems with column aliases.
Freundliche Grüße
Vinzenz