


Comment récupérer une plage spécifique de lignes à l'aide du ROWNUM de SQL ?
Jan 06, 2025 am 12:47 AMRécupération d'une plage spécifique de valeurs SQL ROWNUM
En SQL, la pseudo-colonne ROWNUM peut être utilisée pour récupérer la position de la ligne actuelle dans le résultat ensemble. C’est souvent utile lors du renvoi d’une plage limitée de lignes. Cependant, votre requête actuelle semble rencontrer des problèmes pour renvoyer des lignes dans une plage spécifique.
Pour remédier à ce problème, une légère modification est nécessaire. Au lieu d'utiliser la pseudo-colonne ROWNUM standard, vous devez utiliser une sous-requête pour créer une table temporaire ou CTE (Common Table Expression) qui inclut à la fois les données d'origine et les numéros de ligne. Cette approche garantit que les numéros de ligne sont évalués avant que les conditions de filtrage ne soient appliquées.
La requête corrigée ressemblerait à ceci :
SELECT * FROM ( SELECT m.*, ROWNUM() OVER (ORDER BY m.id) AS r FROM maps006 m ) WHERE r > 49 AND r < 101
Dans cette requête :
- ROWNUM() OVER (ORDER BY m.id) crée une nouvelle colonne nommée r qui contient les numéros de ligne de chaque ligne de la table maps006, classés par identifiant column.
- La sous-requête est alias m pour correspondre au nom de la table d'origine.
- La requête principale filtre ensuite le résultat de la sous-requête en utilisant la plage souhaitée pour r (c'est-à-dire les lignes supérieures à 49 et inférieures que 101).
Cette requête révisée devrait récupérer avec succès les lignes dans le ROWNUM spécifié gamme.
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!

Article chaud

Outils chauds Tags

Article chaud

Tags d'article chaud

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Réduisez l'utilisation de la mémoire MySQL dans Docker

Comment modifier une table dans MySQL en utilisant l'instruction ALTER TABLE?

Comment résoudre le problème de MySQL ne peut pas ouvrir la bibliothèque partagée

Exécutez MySQL dans Linux (avec / sans conteneur Podman avec phpmyadmin)

Exécuter plusieurs versions MySQL sur macOS: un guide étape par étape

Comment sécuriser MySQL contre les vulnérabilités communes (injection SQL, attaques par force brute)?

Quels sont les outils de GUI MySQL populaires (par exemple, MySQL Workbench, PhpMyAdmin)?
