Bạn có thể sử dụng IF trong thủ tục được lưu trữ và IF () trong câu lệnh select.
IF () trong câu lệnh chọn
IF() in select statement mysql> select if(0=0,'Hello MySQL','condition is wrong');
Điều này sẽ tạo ra kết quả sau -
+------------------------------------------------------+ | if('test'='test','Hello MySQL','condition is wrong') | +------------------------------------------------------+ | Hello MySQL | +------------------------------------------------------+ 1 row in set (0.00 sec)
Trường hợp thứ hai nếu tình trạng của bạn trở nên sai -
mysql> select if(1=0,'Hello MySQL','condition is wrong');
Điều này sẽ tạo ra kết quả sau -
+--------------------------------------------+ | if(1=0,'Hello MySQL','condition is wrong') | +--------------------------------------------+ | condition is wrong | +--------------------------------------------+ 1 row in set (0.00 sec)
Nếu trong thủ tục được lưu trữ
Truy vấn để tạo một thủ tục được lưu trữ như sau. Ở đây, chúng tôi đã sử dụng IF để đặt điều kiện -
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 ;
Bây giờ bạn có thể gọi thủ tục đã lưu trữ bằng lệnh gọi.
mysql> call if_demo(1);
Điều này sẽ tạo ra kết quả sau -
+-------------+ | Hello MySQL | +-------------+ | Hello MySQL | +-------------+ 1 row in set (0.00 sec) Query OK, 0 rows affected (0.01 sec)
Nếu điều kiện của bạn trở thành sai -
mysql> call if_demo(0);
Điều này sẽ tạo ra kết quả sau -
+-----------------+ | Wrong Condition | +-----------------+ | Wrong Condition | +-----------------+ 1 row in set (0.00 sec) Query OK, 0 rows affected (0.01 sec)