oracle之PLSQL小習題

2021-06-19 05:54:03 字數 1157 閱讀 4459

--求n的階乘

declare

n number:=&n;

s number:=1;

i number:=1;

sums number:=0;

begin

for i in 1..n loop

s:=s*i;

sums:=sums+s;

end loop;

dbms_output.put_line(n||'的階乘為:'||s);

dbms_output.put_line(n||'的階乘和為:'||sums)

end;

--編寫乙個程式,輸入乙個整數,使用迴圈結構將該數字左右翻轉,輸出翻轉後的結

--果。

方法一:

select reverse('123456') from dual;

方法二:(符合題目要求用到迴圈)

declare

n1 number:=&n1;

n varchar2(100):=to_char(n1);

s number:=length(n);

str varchar2(100):='';

i number:=1;

begin

for i in reverse 1..s loop

str:=str||substr(n,i,1);

end loop;

dbms_output.put_line(str);

end;

--編寫乙個程式,在 emp 表查詢姓名為 allen 員工,並獲取 too_many_rows 和

--no_data_found 異常。

declare

myename emp.ename%type;

begin

select ename into myename from emp where ename='allen';

dbms_output.put_line(''||myename);

exception

when too_many_rows then

dbms_output.put_line('記錄過多');

when no_data_found then

dbms_output.put_line('無記錄');

end;

Oracle 之PLSQL的常見命令

1.sql structured query language sql有許多關鍵字,以下語句是常用於開頭的語句 alter insert audit lock commit noaudit comment rename create revoke delete select drop update ...

Oracle基礎之PL SQL程式塊

pl sql塊由三個部分組成 說明部分 執行部分和異常處理部分。一段完整的pl sql程式塊結構如下所示 declare 說明部分 begin 塊開始標記 執行部分 exception 異常處理部分 end 塊結束標記 說明 1 說明部分 說明部分是可選的。由關鍵字declare引出,用於定義常量 ...

Oracle之PL SQL有關查詢實現

最近有看到網上關於排序查詢的實現有兩個自己不常用的查詢語法,關於分析函式的用法,記之,鑑之,勉之 在乙個表裡怎麼查詢每列資料的最大值和次大值?with tt as select case when col1 in 1,2 then empno else null endempno,case when...