MySQL If 語句具有多個條件?
您可以在儲存過程中使用帶有 AND 或 OR 運算子的 if 語句,以實現多個條件。語法如下 -
DECLARE X int; DECLARE Y int; SET X = value1; SET Y = value2; IF ( (X < Y AND X > value1 AND Y >value2) OR X! = anyValueToCompare) THEN yourStatement; ELSE yourStatement; END IF
現在為了理解上方的語法,我們建立一個儲存過程。建立儲存過程的查詢如下 -
mysql> create procedure SP_IFELSEDEMO() -> BEGIN -> DECLARE X int; -> DECLARE Y int; -> SET X=100; -> SET Y=400; -> IF ( (X < Y AND X > 99 AND Y >300) OR X! = 10 ) THEN -> SELECT 'Logic is Correct'; -> ELSE -> SELECT 'Logic is not Correct'; -> END IF; -> END; -> // Query OK, 0 rows affected (0.27 sec) mysql> DELIMITER ;
現在藉助 CALL 命令呼叫儲存過程。查詢如下 -
mysql> call SP_IF ELSEDEMO();
輸出
+------------------+ | Logic is Correct | +------------------+ | Logic is Correct | +------------------+ 1 row in set (0.04 sec) Query OK, 0 rows affected (0.07 sec)
廣告