ホームページ >データベース >mysql チュートリアル >mysqlストアドプロシージャでifを使用する方法
mysql では、if ステートメントは、式の特定の条件または値の結果に基づいて一連の SQL ステートメントを実行するために使用されます。構文は、"IF 式 THEN ステートメント;END IF;"; です。 TRUE と評価されると、ステートメント ステートメントが実行されます。
このチュートリアルの動作環境: Windows10 システム、mysql8.0.22 バージョン、Dell G3 コンピューター。
mysql ストアド プロシージャで if を使用する方法
MySQL IF ステートメントを使用すると、特定の条件または値の結果に基づいてステートメントを実行できます。式のグループ SQL ステートメント。 MySQL で式を作成するには、リテラル、変数、演算子、さらには関数を組み合わせることができます。式は、TRUE、FALSE、または NULL の 3 つの値のいずれかを返すことができます。
MySQL IF ステートメントの構文
次に、IF ステートメントの構文について説明します。
IF expression THEN statements; END IF;
式 (式) が TRUE と評価される場合、ステートメント ステートメントが実行されます。それ以外の場合、制御フローは END IF の後の次のステートメントに移ります。
次のフローチャートは、IF ステートメントの実行プロセスを示しています:
MySQL IF ELSE ステートメント
式の計算結果が FALSE のときにステートメントを実行するには、以下に示すように IF ELSE ステートメントを使用してください。
IF expression THEN statements; ELSE else-statements; END IF;
次のフローチャートは、IF ELSE ステートメントの実行プロセスを示しています。
MySQL IF ELSEIF ELSE ステートメント
複数の式に基づいて条件付きでステートメントを実行する場合は、次のように IF ELSEIF ELSE ステートメントを使用します。 :IF expression THEN statements; ELSEIF elseif-expression THEN elseif-statements; ... ELSE else-statements; END IF;If 式 式が TRUE と評価された場合、IF 分岐内のステートメントが実行されます。式が FALSE と評価された場合、elseif_expression が TRUE と評価された場合、MySQL は elseif-expression を実行します。 ELSE 分岐が実行されます。else-statements ステートメント。具体的なプロセスは次のとおりです。
MySQL IF ステートメントの例
次の例は、IF ESLEIF ELSE ステートメントの使用方法を示しています。 GetCustomerLevel() ストアド プロシージャは、顧客番号と顧客レベルの 2 つのパラメータを受け取ります。 まず、顧客テーブルから信用限度額を取得します。次に、信用限度額に基づいて、顧客レベル (プラチナ、ゴールド、シルバー) を決定します。 パラメータ p_customerlevel には顧客のレベルが保存され、呼び出し側プログラムによって使用されます。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$$次のフローチャートは、顧客レベルを決定するロジックを示しています 推奨される学習:
以上がmysqlストアドプロシージャでifを使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。