Webdevelopment
Drupal
Betriebssysteme
Design
Sonstige
So., 01/07/2012 - 20:42
Body
In DB2 existiert das SQL-Schlüsselwort LIMIT nicht. Die folgende Abfrage nach den Zeilen 50 bis 100 funktioniert beispielsweise nicht:
Man muss sich in DB2 über die Funktion rownumber() aushelfen und eine geschachtelte query absetzen:
Durch over kann man in der Klammer mittels ORDER BY eine Sortierreihenfolge festlegen (meistens die gleiche wie in der äußeren query).
- SELECT * FROM table t WHERE t.x='value' ORDER BY t.o DESC LIMIT 50,100
- SELECT * FROM (SELECT t.*, rownumber() over (ORDER BY t.o DESC) as rn FROM table t) AS x WHERE t.x='value' AND rn BETWEEN 50 AND 100 ORDER BY t.o DESC
Webdevelopment
Add new comment