IF结构:
begin
if(to_char(sysdate-2,'day')='星期六') then
dbms_output.put_line('DOTA');
elsif (to_char(sysdate,'day')='星期日') then
dbms_output.put_line('LOL');
else
dbms_output.put_line('上班去');
end if;
end;
CASE结构:
方式一
begin
if(to_char(sysdate-2,'day')='星期六') then
dbms_output.put_line('DOTA');
elsif (to_char(sysdate,'day')='星期日') then
dbms_output.put_line('LOL');
else
dbms_output.put_line('上班去');
end if;
end;
begin
if(to_char(sysdate-2,'day')='星期六') then
dbms_output.put_line('DOTA');
elsif (to_char(sysdate,'day')='星期日') then
dbms_output.put_line('LOL');
else
dbms_output.put_line('上班去');
end if;
end;
LOOP循环:
方式一(无条件的循环,需在循环体类写exit)
declare
i int := 1;
begin
loop
dbms_output.put_line(i);
i := i + 1;
if (i = 11) then
exit;
end if;
end loop;
end;
方式二(带条件循环)
declare
i int := 1;
begin
for i in 1..10 loop --i以加 1 进行递增,注意不能对 i in 1..10 加括号
dbms_output.put_line(i); --在这个结构中不能对i进行赋值
end loop;
end;
while循环:
declare
i int := 1;
begin
while(i<10) loop
dbms_output.put_line(i);
i := i+1;
end loop;
end;
GOTO语句:
begin
dbms_output.put_line(1);
goto last_row;
dbms_output.put_line(2);
dbms_output.put_line(3);
<<last_row>>
dbms_output.put_line(4);
end;