IF expression THEN statements; ELSEIF elseif-expression THEN elseif-statements; ... ELSE else-statements; END IF; 如果表達(dá)式(expression)求值為TRUE,則IF分支中的語句(statements)將執(zhí)行;如果表達(dá)式求值為FALSE,則如果elseif_expression的計算結(jié)果為TRUE,MySQL將執(zhí)行elseif-expression,否則執(zhí)行ELSE分支中的else-statements語句。具體流程如下
USE yiibaidb; DELIMITER $$ CREATE PROCEDURE GetCustomerLevel( in p_customerNumber int(11), out p_customerLevel varchar(10)) BEGIN DECLARE creditlim double; SELECT creditlimit INTO creditlim FROM customers WHERE customerNumber = p_customerNumber; IF creditlim > 50000 THEN SET p_customerLevel = 'PLATINUM'; ELSEIF (creditlim <= 50000 AND creditlim >= 10000) THEN SET p_customerLevel = 'GOLD'; ELSEIF creditlim < 10000 THEN SET p_customerLevel = 'SILVER'; END IF; END$$ 以下流程圖演示了確定客戶級別的邏輯