---- 作業 輸出 薪水等級 2 - 5 等級 最低和 最高薪水
set serveroutput on
declare mysal number:=1;
myhi number;
mylo number;
begin
loop
if(mysal>5) then
exit;
end if;
select losal,hisal into mylo,myhi from salgrade where grade=mysal;
dbms_output.put_line(mysal||'的最高薪水是'||myhi||'最低薪水是'||mylo);
mysal:=mysal+1;
end loop;
end;
--第二種方式
set serveroutput on --注意server的寫法
declare mysal number:=2;
myhi number;
mylo number;
begin
loop
select losal,hisal into mylo,myhi from salgrade where grade=mysal;
dbms_output.put_line(mysal||'的最高薪水是'||myhi||'最低薪水是'||mylo);
mysal:=mysal+1;
exit when mysal=6;
end loop;
end;
--求出5的階乘
set serveroutput on
declare a number:=5;
b number:=1;
begin
loop
b:=a*b;
a:=a-1;
exit when a=1;
end loop;
dbms_output.put_line(b); --注意變數的作用範圍、
end;
-- 作業 plsql 程式設計 查詢 emp 表 薪水大於3000
-- 有多個 就輸出 有多個員工大於3000
-- 有1個 就輸出 有1個員工大於3000
-- 沒有 就輸出 沒有
set serveroutput on
declare a number;
begin
select count(*)into a from emp where sal>3000;
if(a>1)then
dbms_output.put_line('有乙個員工大於3000');
elsif(a=0) then
--else if(a=0) then --注意用elsif結尾可以只用乙個end if結束,否則,用多個
dbms_output.put_line('有零個員工大於3000');
else
dbms_output.put_line('有多個員工大於3000');
end if;
--end if;
end;
--case when 語句
set serveroutput on
declare a number:=1;
begin
case a --注意此時的用法
when 1 then
dbms_output.put_line('優秀');
when 2 then
dbms_output.put_line('良好');
else
dbms_output.put_line('及格');
end case;
end;
--case when 語句寫法2
set serveroutput on
declare a number:=1;
b varchar2(32);
begin
b:= case a --注意此時的用法
when 1 then
'優秀' --沒有分號
when 2 then
'良好'
else
'及格'
end case ;
dbms_output.put_line(b);
end;
pl sql程式設計之迴圈操作
在資料庫開發過程中,我們不可避免的使用到迴圈語句。特別是遇到複雜的業務邏輯,我們可能要適用各種不同的迴圈來實現業務要求和最優的執行效率,我想說說我遇到的幾種迴圈的使用方法!1,基本迴圈使用,loop.end loop,這個迴圈是最簡單的迴圈語句!語法 loop if condition then e...
PLSQL判斷和迴圈
pl sql是oracle對sql語言的過程化擴充套件,指在sql命令語言中增加了過程處理語言 如分支 迴圈等 使sql語言具有過程處理能力。把sql語言的資料操作能力與過程資料的資料處理能力結合起來,使得plsql面向過程但比過程語言簡單 高效 靈活和使用。declare 說明部分 變數說明,游標...
Oracle語句塊PL SQL迴圈判斷
pl sql procedural language sql 被資料庫編譯儲存,由使用者呼叫 cuug本周五晚8點免費網路課程,大家趕緊報名去參加吧!程式塊 語法 declare 宣告變數 宣告變數 age int 沒有預設值的變數 age2 int 0 begin 寫正常的處理語句 dbms ou...