MySQL IF ELSE pernyataan melaksanakan pembinaan bersyarat asas apabila ungkapan dinilai sebagai palsu. Sintaksnya adalah seperti berikut -
IF expression THEN statements; ELSE else-statements; END IF;
Pernyataan mesti berakhir dengan koma bertitik.
Untuk menunjukkan penggunaan pernyataan IF ELSE dalam prosedur tersimpan MySQL, kami telah mencipta prosedur tersimpan berikut: Berdasarkan nilai jadual bernama "student_info" seperti yang ditunjukkan di bawah -
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)
Pertanyaan berikut akan mencipta fail bernama "coursedetails_IFELSE" ” prosedur, yang mengandungi pernyataan IF ELSE-
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)
Sekarang, apabila kita memanggil prosedur ini, kita dapat melihat keputusan berikut-
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)
Atas ialah kandungan terperinci Bagaimanakah pernyataan MySQL IF ELSE digunakan dalam prosedur tersimpan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!