Oracle流程控制語句
阿新 • • 發佈:2017-05-30
控制 space reverse logs 2.3 1.2 流程控制語句 case ora
1.選擇語句
1.1 IF...THEN...END IF語句
DECLARE MY_AGE INT; IF MY_AGE IS NULL THEN DBMS_OUTPUT.put_line(‘AGE IS NULL‘); END IF;
1.2 IF...THEN ELSIF THEN....ELSE THEN... ENDIF語句,這裏需要註意的是ELSIF這個,JAVA裏面的寫法就是 else if 這裏是ELSIF,IF前面不能有空格。
IF AGE <= 6 AND AGE > 0 THEN DBMS_OUTPUT.put_line(‘CHILD‘); ELSIF AGE <= 17 AND AGE > 6 THEN DBMS_OUTPUT.put_line(‘TEENAGER‘); ELSIF AGE <= 40 AND AGE > 17 THEN DBMS_OUTPUT.put_line(‘YOUTH‘); ELSIF AGE <= 65 AND AGE > 40 THEN DBMS_OUTPUT.put_line(‘Middle-aged‘); ELSIF AGE > 65 AND AGE<= 150 THEN DBMS_OUTPUT.put_line(‘OLDER‘); ELSE DBMS_OUTPUT.put_line(‘YOU AGE IS OUT OF SPACE‘); END IF;
1.3.CASE 語句
CASE AGE WHEN 1 THEN DBMS_OUTPUT.put_line(‘BABY‘); WHEN 15 THEN DBMS_OUTPUT.put_line(‘TEENAGER‘); WHEN 25 THEN DBMS_OUTPUT.put_line(‘ADULT‘); ELSE DBMS_OUTPUT.put_line(‘OLDER‘); END CASE; END;
2.循環語句
2.1 LOOP 語句
DECLARE RESULT NUMBER:=0; NUM1 NUMBER:=1; NUM2 NUMBER:=100; LOOP RESULT:=RESULT+NUM1; NUM1:=NUM1+1; EXIT WHEN NUM1>NUM2; END LOOP; DBMS_OUTPUT.put_line(‘LOOP RESUT IS:‘||RESULT);
2.2 WHILE語句
WHILE NUM1<=NUM2 LOOP RESULT:=RESULT+NUM1; NUM1:=NUM1+1; END LOOP; DBMS_OUTPUT.put_line(RESULT);
2.3 FOR語句
FOR J IN REVERSE NUM1..NUM2 LOOP RESULT:=RESULT+J; DBMS_OUTPUT.put_line(J); END LOOP; DBMS_OUTPUT.put_line(RESULT);
Oracle流程控制語句