Heim >Datenbank >MySQL-Tutorial >Wie kann ich die n-te Zeile aus einer SQL-Datenbanktabelle auswählen?

Wie kann ich die n-te Zeile aus einer SQL-Datenbanktabelle auswählen?

Patricia Arquette
Patricia ArquetteOriginal
2025-01-20 16:38:43240Durchsuche

How Can I Select the nth Row from a SQL Database Table?

Abrufen der n-ten Zeile aus einer SQL-Tabelle

Diese Anleitung zeigt, wie Sie die n-te Zeile aus einer SQL-Datenbanktabelle auswählen und deckt dabei sowohl datenbankunabhängige als auch datenbankspezifische Methoden ab.

Ein universeller Ansatz

Während SQL-Standards Funktionen zur Zeilenauswahl bieten, implementieren viele Datenbanksysteme diese unterschiedlich. Eine zuverlässige, datenbankübergreifende Methode verwendet eine Unterabfrage mit der Analysefunktion ROW_NUMBER():

<code class="language-sql">WITH OrderedRows AS (
    SELECT ROW_NUMBER() OVER (ORDER BY OrderID) AS RowNum, OrderID, OrderDate
    FROM Orders
)
SELECT *
FROM OrderedRows
WHERE RowNum = n</code>

Ersetzen Sie n durch die gewünschte Zeilennummer, OrderID durch Ihren Primärschlüssel oder Ihre Sortierspalte und Orders durch Ihren Tabellennamen.

Datenbankspezifische Techniken

PostgreSQL und MySQL:

Diese Datenbanken verwenden die Klauseln OFFSET und LIMIT (beachten Sie, dass dies ein nicht standardmäßiger Ansatz ist):

<code class="language-sql">SELECT *
FROM your_table
LIMIT 1 OFFSET n-1;</code>

Hier wird n-1 verwendet, weil OFFSET mit dem Zählen bei 0 beginnt.

Oracle, DB2 und MSSQL:

Diese Systeme unterstützen Standardfensterfunktionen:

<code class="language-sql">SELECT * FROM (
    SELECT
        ROW_NUMBER() OVER (ORDER BY key_column ASC) AS rn,
        *
    FROM your_table
) AS numbered_rows
WHERE rn = n;</code>

Ersetzen Sie key_column durch Ihren Primärschlüssel oder Ihre Sortierspalte, your_table durch Ihren Tabellennamen und n durch die gewünschte Zeilennummer.

PostgreSQL- und SQLite-Updates:

PostgreSQL Version 8.4 und höher sowie SQLite Version 3.25.0 und höher unterstützen beide Standardfensterfunktionen, wodurch der oben beschriebene universelle Ansatz vollständig kompatibel ist.

Das obige ist der detaillierte Inhalt vonWie kann ich die n-te Zeile aus einer SQL-Datenbanktabelle auswählen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn