# [MySQL] letzte x Datensätze ausgeben



## Poweruser (7. August 2004)

Moin,

ich möchte mir die letzten 10000 Datensätze aus einer Tabelle ausgeben lassen. Dabei sollen diese Datensätze aufsteigend (asc) sortiert sein.

So ginge es ja mit absteigender sortierung:
SELECT * FROM tb_users order by uid desc limit 10

Wenn ich die selbe Abfrage nur mit asc ausführe, erhalte ich aber die ersten x Datensätze 

Geht das so überhaupt mit nur einer einzigen Abfrage?


----------



## German (7. August 2004)

> _Original geschrieben von Poweruser _
> *Wenn ich die selbe Abfrage nur mit asc ausführe, erhalte ich aber die ersten x Datensätze *


Schon mal mit desc probiert?


----------



## Poweruser (7. August 2004)

German hat gesagt.:
			
		

> Schon mal mit desc probiert?



ja...steht ja oben schon... da bekomme ich die letzten x Datensätze... ich will aber die letzten x Datensätze ausgegeben haben UND sie sollen asc sortiert sein


----------



## Gorcky (8. August 2004)

Da fielen mir jetzt 2 Lösungsansätze ein:

(ab MySQL 4.0)

```
SELECT FROM (SELECT * FROM tb_users order by uid desc limit 10)order by uid asc
```

oder:

```
SELECT * FROM tb_users order by uid asc limit COUNT(*)-10000, COUNT(*)
```

Aber nicht ausprobiert - also ohne Gewe(/ä)hr...


----------

