Maison >base de données >tutoriel mysql >Comment puis-je sélectionner une plage spécifique de lignes à l'aide de ROWNUM dans SQL ?
Renvoi d'une plage spécifique de valeurs ROWNUM en SQL
Lorsque vous travaillez avec des données en SQL, il est souvent utile de pouvoir sélectionner un plage spécifique de lignes en fonction de leurs numéros de ligne. La pseudo-colonne ROWNUM fournit un moyen pratique de référencer la position d'une ligne dans son ensemble de résultats.
Problème :
Considérez la requête suivante :
select * from maps006 where rownum >49 and rownum <101
Cette requête est destinée à renvoyer toutes les lignes de la table maps006 avec des numéros de ligne supérieurs à 49 et inférieurs à 101. Cependant, il renvoie uniquement les lignes qui satisfont l'opérateur inférieur à (<), en ignorant l'opérateur supérieur à (>).
Solution :
Pour Si vous récupérez correctement les lignes dans la plage spécifiée, vous pouvez utiliser une sous-requête pour créer une table temporaire qui inclut une nouvelle colonne appelée r pour les numéros de ligne. La requête suivante y parvient :
SELECT * from ( select m.*, rownum r from maps006 m ) where r > 49 and r < 101
En utilisant cette approche, vous pouvez efficacement renvoie les lignes qui se situent dans la plage ROWNUM spécifiée.
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!