Maison > base de données > tutoriel mysql > Comment définir des variables utilisateur à partir des résultats de requête dans MySQL ?

Comment définir des variables utilisateur à partir des résultats de requête dans MySQL ?

Mary-Kate Olsen
Libérer: 2024-10-28 19:21:29
original
653 Les gens l'ont consulté

How to Set User Variables from Query Results in MySQL?

Définition des variables utilisateur à partir des résultats de requête dans MySQL

Il est possible de remplir des variables utilisateur avec le résultat d'une requête dans MySQL. Pour y parvenir, intégrez l’affectation de variable dans la requête elle-même. Par exemple :

<code class="mysql">SET @user := 123456;
SELECT @group := `group` FROM user WHERE user = @user;
SELECT * FROM user WHERE `group` = @group;</code>
Copier après la connexion

Testez ceci en créant une table :

<code class="mysql">CREATE TABLE user (`user` int, `group` int);
INSERT INTO user VALUES (123456, 5);
INSERT INTO user VALUES (111111, 5);</code>
Copier après la connexion

Le résultat résultant montre comment la variable utilisateur @group est renseignée avec l'ID de groupe approprié :

<code class="mysql">SET @user := 123456;
SELECT @group := `group` FROM user WHERE user = @user;
SELECT * FROM user WHERE `group` = @group;

+--------+-------+
| user   | group |
+--------+-------+
| 123456 |     5 |
| 111111 |     5 |
+--------+-------+
2 rows in set (0.00 sec)</code>
Copier après la connexion

Remarque : vous pouvez utiliser = ou : = comme opérateur d'affectation dans les instructions SET. Cependant, dans d'autres contextes, seul : = doit être utilisé car = est un comparateur dans ces cas.

Mise à jour :

Une approche alternative consiste à utiliser la clause LIMIT :

<code class="mysql">SET @user := 123456;
SELECT `group` FROM user LIMIT 1 INTO @group;
SELECT * FROM user WHERE `group` = @group;</code>
Copier après la connexion

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