如何在 MySQL 中將 IF 用於儲存過程和 select 語句?
你可以在儲存過程中使用 IF,也可以在 select 語句中使用 IF()。
select 語句中的 IF()
IF() in select statement mysql> select if(0=0,'Hello MySQL','condition is wrong');
這將生成以下輸出 −
+------------------------------------------------------+
| if('test'='test','Hello MySQL','condition is wrong') |
+------------------------------------------------------+
| Hello MySQL |
+------------------------------------------------------+
1 row in set (0.00 sec)如果你的條件不正確,則出現第二種情況 −
mysql> select if(1=0,'Hello MySQL','condition is wrong');
這將生成以下輸出 −
+--------------------------------------------+ | if(1=0,'Hello MySQL','condition is wrong') | +--------------------------------------------+ | condition is wrong | +--------------------------------------------+ 1 row in set (0.00 sec)
如果在儲存過程中
用於建立儲存過程的查詢如下所示。在此,我們使用 IF 設定條件 −
mysql> DELIMITER // mysql> CREATE PROCEDURE if_demo(value int) BEGIN IF 1=value THEN SELECT "Hello MySQL"; ELSE SELECT "Wrong Condition"; END IF; END // Query OK, 0 rows affected (0.20 sec) mysql> DELIMITER ;
現在你可以使用 call 命令呼叫儲存過程。
mysql> call if_demo(1);
這將生成以下輸出 −
+-------------+ | Hello MySQL | +-------------+ | Hello MySQL | +-------------+ 1 row in set (0.00 sec) Query OK, 0 rows affected (0.01 sec)
如果你的條件為假 −
mysql> call if_demo(0);
這將生成以下輸出 −
+-----------------+ | Wrong Condition | +-----------------+ | Wrong Condition | +-----------------+ 1 row in set (0.00 sec) Query OK, 0 rows affected (0.01 sec)
廣告
資料結構
網路技術
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP