CASE … WHEN … THEN
通过下面的例子,我们将了解如何使用这一关键字。
MariaDB [db_test]> drop procedure if exists proc_case;
Query OK, 0 rows affected, 1 warning (0.00 sec)
MariaDB [db_test]> delimiter //
MariaDB [db_test]> create procedure proc_case(in no int, out info varchar(255))
-> begin
-> case no
-> when 1 then
-> select '你选择了1' into info;
-> when 2 then
-> select '你选择了2' into info;
-> else
-> select '你选错了' into info;
-> end case;
-> end //
Query OK, 0 rows affected (0.00 sec)
MariaDB [db_test]> delimiter ;
我们进行测试,结果如下:
if … else
MariaDB [db_test]> drop procedure if exists proc_if;
Query OK, 0 rows affected, 1 warning (0.00 sec)
MariaDB [db_test]> delimiter //
MariaDB [db_test]> create procedure proc_if(in no int, out info varchar(255))
-> begin
-> if no=1 then select '你选择了1' into info;
-> elseif no=2 then select '你选择了2' into info;
-> else select '你选错了' into info;
-> end if;
-> end //
Query OK, 0 rows affected (0.00 sec)
MariaDB [db_test]> delimiter //
结果如下: