Moin!
Ich mag mich täuschen, aber entspricht das nicht meiner letzten Lösung?
Im Ergebnis NICHT.
Ich hatte gehofft ich hätte was übersehen, denn die 2fache Sortierung mißfällt mir.
Du willst 5 Daten aus der Tabelle. Ein bestimmtes und vier kleinere. Limit kann aber keine negativen Zahlen.
die 2fache Sortierung mißfällt mir.
Was glaubst Du wie lange MySQL braucht um eine im Arbeitsspeicher stehenden Tabelle mit 5 Zeilen
zu sortieren?
Alternative: Füge der Tabelle eine Spalte hinzu, welche eine Differenz zu einem Datum nach dem Ende des Universums (oder halt nur in 1000 Jahren) beinhaltet und sortiere nach dieser ...
SELECT `id`, `datum`, SELECT('5000-01-01'-`datum` as `temp`) FROM `tabelle`
WHERE `datum` <= '2011-09-15'
ORDER BY `temp`
LIMIT 0,5;
(oder so ähnlich ...)
MFFG (Mit freundlich- friedfertigem Grinsen)
fastix