Hral: [MySQL] Sortierung

Beitrag lesen

Hallo allerseits,

ich habe eine Tabelle, welche ungefähr so aussieht (nach Datum aufsteigend sortiert):

id      datum
1       2011-06-28
2       2011-06-30
3       2011-07-05
4       2011-07-08
5       2011-08-11
6       2011-09-14
7       2011-09-15
8       2011-09-16
9       2011-09-17

Ich möchte aus dieser Tabelle 5 Einträge auswählen - bestimmt werden diese durch 1 Datum und die 4 vorherigen Daten. Die Ausgabe soll aber aufsteigend sortiert sein.

Absteigende Sortierung ist einfach

  
SELECT * FROM tabelle  
   WHERE datum <= '2011-09-15'  
   ORDER BY datum DESC  
   LIMIT 0,5  

Gibt die richtigen Zeilen nur in der falschen Reihenfolge:

id      datum
7       2011-09-15
6       2011-09-14
5       2011-08-11
3       2011-07-05
2       2011-06-30

Lass ich direkt aufsteigend sortieren, bekomme ich jedoch die falschen Zeilen

  
SELECT * FROM tabelle  
   WHERE datum <= '2011-09-15'  
   ORDER BY datum ASC  
   LIMIT 0,5  

id      datum
1       2011-06-28
2       2011-06-30
3       2011-07-05
4       2011-07-08
5       2011-08-11

Was ja auch logisch ist.

Der einzige Weg, den ich bisher gefunden hab gefällt mir nicht. Gibt es einen besseren?

  
SELECT * FROM  
(   SELECT * FROM tabelle i  
       WHERE i.datum <= '2011-09-15'  
       ORDER BY i.datum DESC  
       LIMIT 0,5  
) a  
ORDER BY a.datum ASC  

Regards

Hral
MySQL-Version: 5.0.7