Tach auch.
nochmal zu der if abfrage, kann ich das auch in die ORDER BY klausel
auslagern??Nein.
Wieso nicht? Wenn man da Funktionen wie RAND() verwenden kann, warum sollte da ein IF() nicht gehen? Zumal ein gültiger Wert für das ORDER-BY-Argument ein Spaltenname, ein Ausdruck(!) oder eine Positionsnummer ist.
Da muss man aber ein wenig auf die MySQL Version achten.
Ich durfte Montag etwas auf einer MySQL 5.0.26 (die ursprüngliche Version auf einem SLES10) ausrollen, und da hatte ich Probleme mit
SELECT
irgendeinausdruck AS created -- Datentyp DATETIME
FROM blah
ORDER BY IFNULL(created, '2100-01-01 00:00:00') -- Q&D: die ohne created Zeitstempel nach hinten sortieren
Hatte nun leider nicht die Gelegenheit, lange den Fehler zu suchen (der eigentliche Fehler bestand eh darin auf einer anderen MySQL Version zu testen als auszurollen, auch wenn zwischen 5.0.26 und 5.0.51 nur die Minor-Nummer geändert wurde), sondern hab das Statement einfach umgeschrieben.
Bis die Tage,
Matti