Maison >base de données >tutoriel mysql >Comment ajouter un compteur incrémentiel à une instruction MySQL SELECT ?

Comment ajouter un compteur incrémentiel à une instruction MySQL SELECT ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-24 15:59:21945parcourir

How to Add an Incrementing Counter to a MySQL SELECT Statement?

Sélection du compteur d'incréments avec MySQL

Dans MySQL, vous pouvez récupérer des données avec un compteur d'incréments en utilisant une combinaison de SELECT et @rownum variables.

Pour y parvenir, utilisez la requête suivante :

SELECT name,
      @rownum := @rownum + 1 as row_number
FROM your_table
CROSS JOIN (SELECT @rownum := 0) r
ORDER BY name;

La variable @rownum s'initialise à 0 en utilisant CROSS JOIN avec une sous-requête, puis incrémente pour chaque ligne renvoyée. La clause ORDER BY garantit que le compteur démarre à partir de 1.

Par exemple :

SELECT name,
      @rownum := @rownum + 1 as row_number
FROM table
ORDER BY name;

Sera affiché :

Jay 1
roy 2
ravi 3
ram 4

De plus, vous pouvez utiliser une méthode en deux étapes approche pour initialiser la variable séparément :

SET @rownum := 0;

SELECT name,
      @rownum := @rownum + 1 as row_number
FROM your_table
ORDER BY name;

Cette approche est utile lors de la définition de variables dans des procédures stockées.

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:
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