Maison >base de données >tutoriel mysql >jugement de procédure stockée mysql

jugement de procédure stockée mysql

WBOY
WBOYoriginal
2023-05-20 13:39:382501parcourir

Jugement de procédure stockée MySQL : utilisez IF, CASE et les instructions conditionnelles pour faire des jugements logiques

La procédure stockée MySQL est l'un des outils importants pour la mise en œuvre de la logique métier dans MySQL. Elle peut traiter des données par lots, transformation, calcul et analyse, etc. Dans les procédures stockées MySQL, nous devons souvent porter des jugements logiques sur les données pour décider comment effectuer les opérations ultérieures. Cet article explique comment utiliser IF, CASE et les instructions conditionnelles pour porter des jugements logiques dans les procédures stockées MySQL.

1. Instruction IF

L'instruction IF est l'instruction conditionnelle la plus couramment utilisée dans les procédures stockées MySQL, qui est utilisée pour effectuer différentes opérations basées sur les conditions vraies ou fausses. Son format de syntaxe est le suivant :

IF (condition) THEN
    statements;
ELSEIF (condition) THEN
    statements;
ELSE
    statements;
END IF;

Parmi eux, la condition représente une instruction de jugement et les instructions représentent un bloc d'instructions qui doit être exécuté. Dans une instruction IF, le bloc IF est exécuté lorsque la condition est vraie et le bloc ELSEIF ou ELSE est exécuté lorsque la condition est fausse. Il peut y avoir plusieurs blocs d'instructions ELSEIF, mais ils ne seront exécutés que lorsque le bloc d'instructions IF est faux.

Ce qui suit est un exemple pour déterminer si le score d'un élève passe par une instruction IF :

CREATE PROCEDURE check_score(IN score INT)
BEGIN
    IF (score >= 60) THEN
        SELECT 'Pass';
    ELSEIF (score >= 50) THEN
        SELECT 'Makeup Exam';
    ELSE
        SELECT 'Fail';
    END IF;
END;

Dans l'exemple ci-dessus, les résultats correspondants sont générés en fonction du score de l'élève . Si le score de l'étudiant échoue, « Échec » est affiché ; si le score est compris entre 50 et 60 points, « Examen de rattrapage » est affiché ; si le score est supérieur à 60 points, « Réussite » est affiché.

2. Instruction CASE

L'instruction CASE est une autre instruction conditionnelle couramment utilisée dans les procédures stockées MySQL. Elle est également utilisée pour effectuer différentes opérations basées sur différentes conditions. L'instruction CASE prend en charge des jugements conditionnels plus complexes. Son format de syntaxe est le suivant :

CASE expr
    WHEN value1 THEN
        statements1;
    WHEN value2 THEN
        statements2;
    ...
    ELSE
        statements;
END CASE;

Parmi eux, expr représente une expression ou une colonne, utilisée pour faire correspondre la valeur dans la condition WHEN, valeur2... représentent la valeur correspondante, instructions1, instructions2 ; ... Représente l'action à effectuer sur les valeurs correspondantes ; le bloc d'instruction ELSE indique l'action à effectuer lorsqu'il n'y a pas de correspondance. Dans une instruction CASE, il peut y avoir plusieurs conditions WHEN.

Ce qui suit est un exemple pour déterminer la note de l'élève grâce à l'instruction CASE :

CREATE PROCEDURE check_level(IN score INT)
BEGIN
    CASE 
        WHEN (score >= 90) THEN SELECT 'Excellent';
        WHEN (score >= 80) THEN SELECT 'Good';
        WHEN (score >= 70) THEN SELECT 'Fair';
        WHEN (score >= 60) THEN SELECT 'Pass';
        ELSE SELECT 'Fail';
    END CASE;
END;

Dans l'exemple ci-dessus, selon les différentes notes des élèves, la note correspondante est sortir. Si le score de l'étudiant est supérieur à 90 points, « Excellent » est émis ; entre 80 et 90 points, « Bon » est affiché entre 70 et 80 points, « Passable » est affiché entre 60 et 70 points, puis « Réussi » ; ; si le résultat est un échec, affiche "Fail".

3. Instruction conditionnelle

L'instruction conditionnelle est un autre outil de jugement logique couramment utilisé dans les procédures stockées MySQL. Son format de syntaxe est le suivant :

(condition1) AND/OR (condition2) 
#🎜🎜 #. Parmi eux, condition1 et condition2 représentent respectivement les deux conditions de jugement de l'instruction conditionnelle. Vous pouvez utiliser AND ou OR pour connecter différentes conditions AND signifie que deux conditions doivent être remplies, et OR signifie qu'au moins une condition doit être remplie.

Ce qui suit est un exemple pour déterminer si un élève est en retard grâce à une déclaration conditionnelle :

CREATE PROCEDURE check_lateness(IN late INT)
BEGIN
    IF (late = 0) OR (late <= 5) THEN
        SELECT 'On Time';
    ELSE
        SELECT 'Late';
    END IF;
END;

Dans l'exemple ci-dessus, si l'élève n'est pas en retard (c'est-à-dire en retard=0 ), ou l'heure de retard. Si elle ne dépasse pas 5 minutes, affichez "On Time", sinon affichez "Late".

Summary

IF, CASE et les instructions conditionnelles sont des outils de jugement logique couramment utilisés dans les procédures stockées MySQL. Ils peuvent effectuer différentes opérations en fonction de différentes conditions. Dans le travail de développement réel, nous pouvons choisir différentes déclarations de jugement en fonction des besoins spécifiques de l'entreprise pour améliorer l'efficacité et la lisibilité du code.

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
Article précédent:procédure stockée java mysqlArticle suivant:procédure stockée java mysql