CREATE PROCEDURE `justifyGroupNum`() 決定的ではない SQL セキュリティ定義者 コメント '' 始める /*実行方法:justifyGroupNum()を呼び出す*/ DECLARE p_group_id int; p_num int を宣言します。 stopFlag int を宣言します。 DECLARE カーソル名 CURSOR FOR 選択 c_group_id,count(*) として num `t_group_member` より ここで c_valid は (3,4) にあります c_group_id でグループ化します。 NOT FOUND の CONTINUE ハンドラを宣言 set stopFlag=1; OPEN カーソル名; 繰り返す FETCH カーソル名 INTO p_group_id,p_num; 始める update t_groupinfo set c_member_number=p_num where c_group_id=p_group_id; 終わり; stopFlag = 1 になるまで 繰り返しを終了します。 CLOSE カーソル名; 終わり; |
概要:
1. カーソルの countinue ハンドラの設定に注意してください: DECLARE CONTINUE HANDLER FOR NOT FOUND set stopFlag=1;
2. REPEAT と UTILE [停止条件] END REPEAT の使用に注意してください。そうでないとループしません。
3. RUN、入力、実行方法:call justifyGroupNum()