Oracle:FOR循环语句练习

--打印输出从1到10的正整数
DECLARE
  v_i NUMBER(10) := 0;
BEGIN
  LOOP
    v_i := v_i + 1;
    DBMS_OUTPUT.put_line(v_i);
  EXIT WHEN v_i=10; --或者v_i>9;
  END LOOP;
END;

--打印输出从1到10之间的偶数
DECLARE
  v_i NUMBER(10) := 0;
BEGIN
  LOOP
    v_i := v_i + 1;
    IF v_i MOD 2 = 0 THEN
      DBMS_OUTPUT.put_line(v_i);
    END IF;
  EXIT WHEN v_i=10;
  END LOOP;
END;

--打印输出1到100之间的正整数之和。
--第一种方法
DECLARE
  v_i NUMBER(10) := 0;
  v_sum NUMBER(10) :=0;
BEGIN
  LOOP
    v_i := v_i + 1;
    v_sum := v_sum + v_i;
  EXIT WHEN v_i=100;
  END LOOP;
    DBMS_OUTPUT.put_line(v_sum);
END;
--第二种方法
DECLARE
  v_sum NUMBER(10) := 0;
BEGIN
  FOR v_i IN 1..100 LOOP
    v_sum := v_sum + v_i ;
  END LOOP;
    DBMS_OUTPUT.put_line(v_sum);
END;

--打印输出从1到10的正整数
--第一种方法
DECLARE
  v_i NUMBER(10) := 0;
BEGIN
  FOR v_i IN 1..10 LOOP
    DBMS_OUTPUT.put_line(v_i);
  END LOOP;
END;
--第二种方法
DECLARE
  v_i NUMBER(10) := 0;
BEGIN
  FOR v_i IN REVERSE 1..10 LOOP --倒序
    DBMS_OUTPUT.put_line(v_i);
  END LOOP;
END;

原文地址:https://www.cnblogs.com/createboke/p/6666490.html