489 Stimmen

Wie wählt man die n-te Zeile in einer SQL-Datenbanktabelle aus?

Ich bin daran interessiert, einige (idealerweise) datenbankunabhängige Möglichkeiten zur Auswahl der n Zeile aus einer Datenbanktabelle. Es wäre auch interessant zu sehen, wie dies mit den nativen Funktionen der folgenden Datenbanken erreicht werden kann:

  • SQL-Server
  • MySQL
  • PostgreSQL
  • SQLite
  • Oracle

Ich tue derzeit etwas wie das folgende in SQL Server 2005, aber ich würde daran interessiert sein, andere mehr agnostische Ansätze zu sehen:

WITH Ordered AS (
SELECT ROW_NUMBER() OVER (ORDER BY OrderID) AS RowNumber, OrderID, OrderDate
FROM Orders)
SELECT *
FROM Ordered
WHERE RowNumber = 1000000

Gutschrift für die obige SQL: Weblog von Firoz Ansari

Aktualisierung: Siehe Troels Arvins Antwort zum SQL-Standard. Troels, hast du irgendwelche Links, die wir zitieren können?

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X