Maison > base de données > tutoriel mysql > Comment ajouter un numéro de série à une requête dans MySQL

Comment ajouter un numéro de série à une requête dans MySQL

WBOY
Libérer: 2022-03-09 15:33:51
original
25663 Les gens l'ont consulté

Dans MySQL, vous pouvez utiliser l'instruction SELECT pour définir des variables utilisateur afin d'ajouter des numéros de série aux résultats de la requête. La syntaxe est "SELECT champ 1, champ 2, (@i:=@i+1) AS 'numéro de série'. FROM nom de la table, (SELECT @ i:=0) AS itable;".

Comment ajouter un numéro de série à une requête dans MySQL

L'environnement d'exploitation de ce tutoriel : système windows10, version mysql8.0.22, ordinateur Dell G3.

Comment ajouter des numéros de série aux requêtes dans MySQL

Une solution courante consiste à générer des numéros de série en définissant des variables utilisateur

Exemple : Supposons que la base de données ait une table étudiant

Il y a des champs dans la table : sid, sname, Gender , age

Requête Les données du tableau sont ajoutées avec un numéro de série, et le SQL correspondant est :

SELECT sid,sname,gender,age,(@i:=@i+1) AS '序号' 
FROM student,(SELECT @i:=0) AS itable;
Copier après la connexion

ou

SET @i=0;
SELECT sid,sname,gender,age,@i:=@i+1 AS '序号' 
FROM student;
Copier après la connexion

Les résultats de la requête sont comme indiqué dans la figure :

Comment ajouter un numéro de série à une requête dans MySQL

Explication :

1, (@i:=@i+1 ) peut également être écrit comme @i:=@i+1, l'ajout de parenthèses est pour plus de clarté visuelle.

Ce que cela signifie est : ajoutez 1 à la variable i et attribuez-la à la variable i. Après avoir défini une variable, la variable sera incrémentée à chaque fois que vous interrogez. Il n'est pas nécessaire que cette variable soit incrémentée à chaque fois que vous exécutez la requête. pour obtenir les résultats.

2. (SELECT @i:=0) AS itable, définissez la variable utilisateur i, définissez la valeur initiale sur 0, puis utilisez-la comme table dérivée AS définit l'alias de la table.

3. RÉGLER @i=0. Définissez la variable utilisateur i et attribuez la valeur initiale à 0.

Points de connaissance associés :

1. La façon dont MySQL définit les variables utilisateur : sélectionnez @nom de la variable Dans l'instruction SQL ci-dessus, le nom de la variable est i

. 2. Variables utilisateur Affectation : L'une consiste à utiliser le signe "=" directement et l'autre consiste à utiliser le signe ":=". La différence entre

= et := :

Lors de l'utilisation de la commande set pour attribuer des valeurs aux variables utilisateur, les deux méthodes peuvent être utilisées,

c'est-à-dire : SET @variable name=xxx ou SET @variable name:= xxx

use select Lors de l'attribution de valeurs aux variables utilisateur dans une instruction, vous ne pouvez utiliser que la méthode ":=", car dans l'instruction select, le signe "=" est considéré comme un opérateur de comparaison. C'est-à-dire : SELECT @nom de la variable :=xxx

① : Variable utilisateur

② : Table dérivée

③ : Alias ​​de paramètre AS

Utilisant Oracle, la méthode d'écriture est :

SELECT "sid","sname","gender","age",
ROW_NUMBER() over(order by "sid") AS "序号"
FROM "user";
Copier après la connexion

Apprentissage recommandé : Tutoriel vidéo mysql

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!

Étiquettes associées:
source:php.cn
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal