Suchen nach Datensätzen in einem Wertebereich

Hallo, ich habe ein Problem. Meine DB: Oracle 10g. Ich habe eine Tabelle t1 mit Datensätzen, die fortlaufend nummeriert sind. Permanent kommen neue Datensätze hinzu.
Ich will mir nun die letzten Tausend Datensätze anzeigen lassen.

Mein Versuch:

select * from t1 where LfdNr > (max(LfdNr) - 1000);

Ich bekomme eine Fehlermeldung, dass eine group-Funktion nicht erlaubt ist.

Danke

Stefan

select \* from t1 where LfdNr \> (select max(LfdNr) - 1000 from t1);

Aber wirklich nur bei lückenlos fortlaufenden Nummern.

HTH, m

Hat geklappt, danke für deine Hilfe. Nur verstehe ich nicht, was der Effekt wäre, wenn die Nummerierung nicht lückenlos ist, also z.B. 1, 2,3,5,6. Solange der Wert unter dem MAX-Wert ist, ist es doch egal, oder. Oder meinst du z.B. 1, 2, 4563, 5, 6?

Gruss
Stefan

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hat geklappt, danke für deine Hilfe. Nur verstehe ich nicht,
was der Effekt wäre, wenn die Nummerierung nicht lückenlos
ist, also z.B. 1, 2,3,5,6. Solange der Wert unter dem MAX-Wert
ist, ist es doch egal, oder. Oder meinst du z.B. 1, 2, 4563,
5, 6?

Du wolltest die letzten 1000. Wenn es Lücken gibt, sind es natürlich weniger als 1000.
Aber vermutlich wolltest du tatsächlich einen Wertebereich, egal, mit wievielen Werten.