Maison > base de données > tutoriel mysql > Comment puis-je sélectionner la nième ligne d'une table de base de données SQL ?

Comment puis-je sélectionner la nième ligne d'une table de base de données SQL ?

Patricia Arquette
Libérer: 2025-01-20 16:38:43
original
258 Les gens l'ont consulté

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

Récupération de la nième ligne d'une table SQL

Ce guide montre comment sélectionner la nième ligne d'une table de base de données SQL, couvrant à la fois les méthodes indépendantes de la base de données et spécifiques à la base de données.

Une approche universelle

Bien que les standards SQL offrent des fonctionnalités de sélection de lignes, de nombreux systèmes de bases de données les implémentent différemment. Une méthode fiable et inter-bases de données utilise une sous-requête avec la ROW_NUMBER() fonction analytique :

WITH OrderedRows AS (
    SELECT ROW_NUMBER() OVER (ORDER BY OrderID) AS RowNum, OrderID, OrderDate
    FROM Orders
)
SELECT *
FROM OrderedRows
WHERE RowNum = n
Copier après la connexion

Remplacez n par le numéro de ligne souhaité, OrderID par votre clé primaire ou colonne de tri, et Orders par le nom de votre table.

Techniques spécifiques aux bases de données

PostgreSQL et MySQL :

Ces bases de données utilisent les clauses OFFSET et LIMIT (notez qu'il s'agit d'une approche non standard) :

SELECT *
FROM your_table
LIMIT 1 OFFSET n-1;
Copier après la connexion

Ici, n-1 est utilisé car OFFSET commence à compter à partir de 0.

Oracle, DB2 et MSSQL :

Ces systèmes prennent en charge les fonctions de fenêtre standard :

SELECT * FROM (
    SELECT
        ROW_NUMBER() OVER (ORDER BY key_column ASC) AS rn,
        *
    FROM your_table
) AS numbered_rows
WHERE rn = n;
Copier après la connexion

Remplacez key_column par votre clé primaire ou colonne de tri, your_table par le nom de votre table et n par le numéro de ligne souhaité.

Mises à jour PostgreSQL et SQLite :

PostgreSQL version 8.4 et versions ultérieures, et SQLite version 3.25.0 et versions ultérieures, prennent toutes deux en charge les fonctions de fenêtre standard, ce qui rend l'approche universelle décrite ci-dessus entièrement compatible.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal