Firebird: SELECT mit LIMIT
Frage von PC Control | Letztes Update am 13.05.2021 | Erstellt am 01.02.2017
Ich benutze eine Firebird-Datenbank und würde gerne nur einen Teil der Datensätze einer meiner Anfragen auslesen. In MySQL habe ich dafür bisher das Keyword LIMIT benutzt:
SELECT col1, col2 FROM tab LIMIT 10; SELECT col1, col2 FROM tab LIMIT 20, 10;
Das erste Statement würde entsprechend die ersten 10 Datensätze auslesen, das zweite die Reihen 21 bis 30.
Wenn ich nun aber dasselbe Statement in Firebird benutze, erhalte ich folgenden Fehler:
SQLException Context: Statement::Prepare Message: isc_dsql_prepare failed SQL error code = -104 Token unknown: LIMIT
Dieses "Token unknown" habe ich nun so interpretiert, dass Firebird das Wort "LIMIT" gar nicht kennt. Ich habe dann auch in die Liste der reservierten Wörter von Firebird geschaut und tatsächlich ist LIMIT dort gar nicht aufgeführt.
Gibt es trotzdem eine Möglichkeit auch in Firebird so etwas wie eine LIMIT-Anfrage durchzuführen?
Ähnliche Themen
Firebird: INSERT mit ON DUPLICATE KEY UPDATE
Frage | 2 Antworten
MySQL: Suchergebnisse auf mehreren Seiten darstellen
Tutorial | 0 Kommentare
Börse: Orderzusätze beim Verkauf von Wertpapieren
Info | 0 Kommentare
HTML-Formular mit Daten vorbelegen
Tutorial | 0 Kommentare
ObjectPascal: Filtern und Sortieren von Feldwerten einer Datenbank
Offene Frage | 4 Antworten
Börse: Orderzusätze beim Kauf von Wertpapieren
Info | 0 Kommentare
MySQL: CSV Export als auf dem Server gespeicherte Datei
Tutorial | 0 Kommentare
Wichtiger Hinweis
Bitte beachten Sie: Die Beiträge auf askingbox.de sind Beiträge von Nutzern und sollen keine professionelle Beratung ersetzen. Sie werden nicht von Unabhängigen geprüft und spiegeln nicht zwingend die Meinung von askingbox.de wieder. Mehr erfahren.
Jetzt mitmachen
Stellen Sie Ihre eigene Frage oder schreiben Sie Ihren eigenen Artikel auf askingbox.de. So gehts.
Ja, ein "LIMIT" gibt es auch in Firebird, jedoch musst du dort eine andere Syntax benutzen.
In Firebird läuft das Ganze über die Keywords FIRST und SKIP, die du folgendermaßen verwenden kannst:
Das erste Statement entspricht deinem ersten MySQL-Beispiel und liest die ersten 10 Datensätze aus. Das zweite Statement entspricht deinem zweiten Beispiel und liest 10 Datensätze aus, nachdem 20 übersprungen wurden.
Wie du siehst ist das SKIP optional und kann weggelassen werden, sofern du die ersten Datensätze haben möchtest ohne irgendwelche Daten zu überspringen.
Letztes Update am 13.05.2021 | Erstellt am 01.02.2017