PL/SQLでのFOR文サンプルです。
構文
- (開始値→終了値 順にループする)
- FOR <変数> IN <開始値> .. <終了値> LOOP --繰り返し処理 END LOOP;
- (終了値→開始値 順にループする)
- FOR <変数> IN REVERSE <開始値> .. <終了値> LOOP --繰り返し処理 END LOOP;
サンプルソース
例)1~10の合計値を返す
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
CREATE OR REPLACE PROCEDURE P_SAMPLE( o_num OUT NUMBER ,o_sqlcode OUT NUMBER ,o_sqlerrm OUT VARCHAR2 )IS ret NUMBER; BEGIN ret := 0; --1~10までのループ処理 FOR cnt IN 1..10 LOOP ret := ret + cnt; END LOOP; o_num := ret; EXCEPTION WHEN OTHERS THEN o_sqlcode := SQLCODE; o_sqlerrm := SQLERRM; END P_SAMPLE; / |
メモ
- カウンター用変数の宣言は不要です。