Maison > base de données > tutoriel mysql > le corps du texte

procédure stockée mysql si instruction

WBOY
Libérer: 2023-05-23 11:21:07
original
1659 Les gens l'ont consulté

Les procédures stockées MySQL sont un moyen de créer du code réutilisable dans MySQL. Les procédures stockées sont constituées d'une série d'instructions SQL et de structures de contrôle. Parmi eux, l'instruction if est une structure importante pour le flux de contrôle.

L'utilisation des instructions if est très courante dans les procédures stockées MySQL. L'instruction if est couramment utilisée pour effectuer des branches conditionnelles dans le code de procédure stockée. L'instruction if vous permet de vérifier un ensemble de conditions, puis de choisir une action à effectuer en fonction de l'une de ces conditions. La syntaxe de l'instruction

if est la suivante :

IF expression THEN
    statements;
ELSEIF expression THEN
    statements;
ELSE
    statements;
END IF;
Copier après la connexion

Dans cette syntaxe :

  • expression est l'expression conditionnelle à évaluer.
  • La clause THEN contient des instructions à exécuter lorsque la condition est évaluée à TRUE.
  • La clause ELSEIF est une autre instruction conditionnelle facultative.
  • La clause ELSE contient des instructions à exécuter si toutes les conditions sont fausses.
  • END IF; la clause indique la fin de l'instruction if.

L'exemple suivant illustre l'utilisation des instructions if via une procédure stockée MySQL.

Supposons que nous ayons une table de clients. Le tableau contient les champs suivants :

  • customer_id : ID client
  • name : Nom du client
  • age : Âge du client
  • gender : Sexe du client
  • email : Email du client

Nous allons maintenant créer une procédure stockée que La procédure stockée renverra différentes descriptions en fonction de l'âge du client. Si le client a 18 ans ou plus, « Adulte » est renvoyé. Sinon, renvoie "mineur".

Voici le code complet de cette procédure stockée :

CREATE PROCEDURE get_customer_age_description(IN id INT)
BEGIN
    DECLARE age INT;
    SELECT age INTO age FROM customers WHERE customer_id = id;
    
    IF age >= 18 THEN
        SELECT '成年人' as description;
    ELSE
        SELECT '未成年人' as description;
    END IF;
END;
Copier après la connexion

Tout d'abord, cette procédure stockée obtiendra l'identifiant client et récupérera l'âge du client dans la base de données. Ensuite, utilisez une instruction if pour déterminer la description à renvoyer. Si le client a 18 ans ou plus, « Adulte » est renvoyé. Sinon, renvoie "mineur".

Appelez cette procédure stockée en exécutant la commande suivante :

CALL get_customer_age_description(1);
Copier après la connexion

Nous pouvons obtenir le résultat suivant :

+---------------+
| description   |
+---------------+
| 成年人        |
+---------------+
Copier après la connexion

En appelant l'instruction ci-dessus, si l'ID client est 1 et que le client a 18 ans ou plus, le résultat de sortie est "Personnes adultes".

Dans cet exemple, nous déclarons d'abord un âge variable. Cette variable est utilisée pour stocker l'âge du client que nous obtenons de la base de données. Nous utilisons ensuite une instruction SELECT pour récupérer l'âge du client dans la base de données. Ensuite, nous utilisons une instruction if pour comparer les âges et sélectionner une description différente en fonction des résultats de la comparaison.

En bref, l'instruction if fournit un moyen efficace de contrôler le flux des procédures stockées MySQL. Vous pouvez créer votre propre instruction if en ajoutant différentes conditions selon vos besoins. Cela contribuera à améliorer la fonctionnalité et l’utilité 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!

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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!