您的位置:首页 > 数据库

用SQL计算天数

2008-09-29 14:29 148 查看
set serveroutput on ;
declare
d date;
y number;
m number;
da number;
two number;
result number;
begin
result:=0;
select sysdate into d from dual;
y:=to_number(substr(to_char(d,'dd-mm-yyyy'),7,4));
m:=to_number(substr(to_char(d,'dd-mm-yyyy'),4,2));
da:=substr(to_char(d,'dd-mm-yyyy'),1,2);
if(y mod 4=0) then
two:=29;
else
two:=28;
end if;
for i in 1..m loop
case i
when 1 then result:=result+31;
when 2 then result:=result+two;
when 3 then result:=result+31;
when 4 then result:=result+30;
when 5 then result:=result+31;
when 6 then result:=result+30;
when 7 then result:=result+31;
when 8 then result:=result+31;
when 9 then result:=result+30;
when 10 then result:=result+31;
when 11 then result:=result+30;
when 12 then result:=result+30;
end case;
end loop;
result:=result+da;
dbms_output.put_line('运行结果是:'||result);
end;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: