Die
MySQLIF ELSE-Anweisung implementiert die grundlegende bedingte Konstruktion, wenn der Ausdruck als falsch ausgewertet wird. Die Syntax lautet wie folgt:
IF expression THEN statements; ELSE else-statements; END IF;
Die Anweisung muss mit einem Semikolon enden.
Um die Verwendung derIF ELSE-Anweisung in einer gespeicherten MySQL-Prozedur zu demonstrieren, haben wir die folgende gespeicherte Prozedur erstellt: Basierend auf den Werten der Tabelle mit dem Namen „student_info“, wie unten gezeigt –
mysql> Select * from student_info; +------+---------+------------+------------+ | id | Name | Address | Subject | +------+---------+------------+------------+ | 101 | YashPal | Amritsar | History | | 105 | Gaurav | Jaipur | Literature | | 125 | Raman | Shimla | Computers | +------+---------+------------+------------+ 3 rows in set (0.00 sec)
Die folgende Abfrage erstellt eine Datei mit dem Namen „coursedetails_IFELSE“ – die Prozedur, die die IF ELSE-Anweisung enthält –
mysql> DELIMITER // ; mysql> CREATE PROCEDURE coursedetails_IFELSE(IN S_Subject Varchar(20), OUT S_Course varchar(50)) -> BEGIN -> DECLARE Sub Varchar(20); -> SELECT Subject INTO SUB -> FROM Student_info WHERE S_Subject = Subject; -> IF Sub = 'Computers' THEN -> SET S_Course = 'B.Tech(CSE)'; -> ELSE -> SET S_Course = 'Subject Not in the table '; -> END IF; -> END // Query OK, 0 rows affected (0.00 sec)
Wenn wir nun diese Prozedur aufrufen, können wir die folgenden Ergebnisse sehen –
mysql> Delimiter ; // mysql> CALL coursedetails_IFELSE('Computers', @S_Course); Query OK, 1 row affected (0.00 sec) mysql> Select @S_Course; +-------------+ | @S_Course | +-------------+ | B.Tech(CSE) | +-------------+ 1 row in set (0.00 sec) mysql> CALL coursedetails_IFELSE ('History', @S_Course); Query OK, 0 rows affected (0.00 sec) mysql> Select @S_Course; +--------------------------------+ | @S_Course | +--------------------------------+ | Subject Not in the table | +--------------------------------+ 1 row in set (0.00 sec)
Das obige ist der detaillierte Inhalt vonWie wird die MySQL IF ELSE-Anweisung in gespeicherten Prozeduren verwendet?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!