標籤:迴圈語句 got 三星 weight 數值 case amp boolean varchar2
select * from goods; a char(10):=‘三星‘ --定長字串 b varchar2(10):=‘三星‘; --可變字串 c binary_integer:=‘10001‘; --帶正負號的整數,為整數計算最佳化效能 d number(5,2):=‘123.45‘; --數值 e long --變長字串 f date --日期 g boolean --布爾 h rowid --存放資料庫行號 i Goods.Gname%type:=‘三星‘; --用%type定義與表相配的屬性類型------------------------------------------------------if語句declare c binary_integer:=‘10002‘;begin if c>10 then update Goods set Gnote=‘\(^o^)/~‘ where Gid=c; end if;end;------------------------------------------------------if..else語句declare a number(4,2):=‘13.45‘; d number(5,2):=‘123.45‘;begin if a>d then DBMS_OUTPUT.put_line(‘AAA‘); else DBMS_OUTPUT.put_line(‘BBB‘); end if;end;------------------------------------------------------if..elsif..else語句declare a varchar2(10):=‘823‘; b varchar2(10):=‘12a3456‘; c number:=‘132456798‘;begin if a<b and a>c then DBMS_OUTPUT.put_line(‘AAA‘); elsif a>b or a>c then DBMS_OUTPUT.put_line(‘BBB‘); --字串比較是從下標第一個開始比 elsif a<c then DBMS_OUTPUT.put_line(‘CCC‘); else DBMS_OUTPUT.put_line(‘DDD‘); end if;end;------------------------------------------------------case語句declare a char(10):= upper(‘&p_grade‘); b varchar2(10); begin b:= case a when ‘A‘ then ‘123‘ when ‘B‘ then ‘456‘ when ‘C‘ then ‘789‘ else ‘NO‘ end; DBMS_OUTPUT.put_line(b||‘ABCD‘);end;------------------------------------------------------loop迴圈declare a number(10):=0;begin loop a:=a+1; DBMS_OUTPUT.put_line(‘a的當前值為‘||a); exit when a=10; end loop;end;------------------------------------------------------for迴圈declare a char(10):=1; begin for x in 1..10 loop DBMS_OUTPUT.put_line(‘a的當前值為‘||a); end loop;end;------------------------------------------------------for迴圈使用關鍵字reverse(倒序迴圈)declare a varchar2(10):=10;begin for a in reverse 1..10 loop DBMS_OUTPUT.put_line(‘a的當前值為‘||a); end loop;end; ------------------------------------------------------while迴圈declare a number:=1;begin while a<=10 loop DBMS_OUTPUT.put_line(‘a的當前值為‘||a); a:=a+1; end loop;end; ------------------------------------------------------用for迴圈添加屬性create table Demo (DID number(5),Dname varchar2(10));select * from Demo;declare a number:=1; b varchar2(10):=‘Jack‘;begin for a in 1..10 loop insert into Demo(DID,DNAME) values (a,b); end loop; for a in 1..10 loop insert into Demo(DNAME) values (b); end loop;end;delete from Demo------------------------------------------------------declare a number:=1;begin loop DBMS_OUTPUT.put_line(‘a的當前值為‘||a); a:=a+1; if a>10 then goto loyer; end if; end loop; <<loyer>> null; --不需要處理任何資料 DBMS_OUTPUT.put_line(‘ABCD‘);end;------------------------------------------------------
Oracle迴圈語句