MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLストアドプロシージャでFORLOOPを使用するにはどうすればよいですか?


以下は、MySQLストアドプロシージャでFORLOOPを操作するための構文です-

delimiter //
CREATE procedure yourProcedureName()
wholeblock:BEGIN
   DECLARE anyVariableName1 INT ;
   Declare anyVariableName3 int;
   DECLARE anyVariableName2 VARCHAR(255);
   SET anyVariableName1 =1 ;
   SET anyVariableName3 =10;
   SET anyVariableName2 = '';
loop_label: FORLOOP
   IF anyVariableName1 > anyVariableName3 THEN
      LEAVE loop_label;
   END IF;
   SET anyVariableName2 = CONCAT(anyVariableName2 ,anyVariableName1 ,',');
   SET anyVariableName1 = anyVariableName1 + 1;
   ITERATE loop_label;
   END FORLOOP;
SELECT anyVariableName2;
END
//

これで、上記の構文を実装できます。 forループクエリは次のとおりです-

mysql> delimiter //
mysql> CREATE procedure ForLoop()
   -> wholeblock:BEGIN
   -> DECLARE start INT ;
   -> Declare maxLimit int;
   -> DECLARE result VARCHAR(255);
   -> SET start =1 ;
   -> SET maxLimit=10;
   -> SET result = '';
   -> loop_label: LOOP
   -> IF start > 10 THEN
   -> LEAVE loop_label;
   -> END IF;
   -> SET result = CONCAT(result,start,',');
   -> SET start = start + 1;
   -> ITERATE loop_label;   
   -> END LOOP;
   -> SELECT result;
   -> END
   -> //
Query OK, 0 rows affected (0.37 sec)
mysql> delimiter ;

上記のforループは、1から10を出力します。つまり、次の形式で1、2、3、4、.....10を出力します。 CALLコマンドを使用してストアドプロシージャを呼び出します。構文は次のとおりです-

call yourStoredProcedureName();

呼び出すクエリは次のとおりです-

mysql> call ForLoop();

出力

+-----------------------+
| result                |
+-----------------------+
| 1,2,3,4,5,6,7,8,9,10, |
+-----------------------+
1 row in set (0.00 sec)
Query OK, 0 rows affected (0.01 sec)

  1. MySQLストアドプロシージャで区切り文字を正しく使用して値を挿入するにはどうすればよいですか?

    まずテーブルを作成しましょう- mysql> create table DemoTable2028    -> (    -> StudentFirstName varchar(20),    -> StudentLastName varchar(20)    -> ); Query OK, 0 rows affected (0.87 sec) これは、ストアドプロシージャを作成し、値を挿入するためのクエリです(区切り文字を正しく使用して)- mysql> delimiter

  2. Pythonでforループを使用するにはどうすればよいですか?

    Pythonのforループは、いくつかの要素または特定の整数範囲を反復処理するために使用されます。要素は、配列、文​​字列、またはPythonの他の反復オブジェクトである可能性があります。 forループは、最も頻繁に使用されるループステートメントです。私たちが遭遇するプログラミングの質問のほとんどは、そのソリューションでforループを利用しています。 範囲内ループの場合 Pythonには範囲ループがあります。変数が反復しなければならない範囲を指定する2つの整数値を取ります。整数パラメータが1つだけ指定されている場合、指定された整数が範囲の終わりと見なされ、デフォルトでは開始は0です。 構文