用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;
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;
相关文章推荐
- sql语句计算出每个月的天数
- SQL 计算两日期的天数
- SQL计算两个日期之间的工作天数
- SQL计算每个月的第一天,最后一天,本月的天数
- 【原创】如何使用一句SQL计算工作日天数?
- SQL计算每个月的第一天,最后一天,本月的天数
- Sql计算两个日期之间的天数
- SQL 计算每个月的第一天,最后一天,本月的天数,ORACLE中日期加减
- 计算当月的天数(sql)
- SQL 计算两日期之间的工作天数和过滤工作日(周六、周日)
- SQL计算两个日期之间的工作天数(除过周六日的天数)
- SQL计算两个日期之间相差的工作天数
- Question[SQL]:如何计算重叠的天数(未完成...)
- [原创]SQL 表值函数:获取从今天计算起往前自定义天数
- SQL计算天数
- SQL根据已知的年月,计算该月的天数.
- SQL server和access两种用SQL语句计算两个日期间隔的年、月以及天数
- SQL根据已知的年月,计算该月的天数.
- 在Oracle的SQL中,如何计算两个日期时间段的交集天数
- SQL 计算每个月的工作天数