免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1959 | 回复: 3
打印 上一主题 下一主题

关于日期的计算问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-06-20 16:04 |只看该作者 |倒序浏览
如何对两个datetime year to second型的字段进行算术运算?例如相减后按秒或分钟体现

论坛徽章:
0
2 [报告]
发表于 2005-07-02 23:40 |只看该作者

关于日期的计算问题

[quote]原帖由 "centuar"]如何对两个datetime year to second型的字段进行算术运算?例如相减后按秒或分钟体现[/quote 发表:


关注中……

论坛徽章:
0
3 [报告]
发表于 2005-07-16 14:42 |只看该作者

关于日期的计算问题

可以把两个时间转换为秒计算
这样两个时间相减就为秒,
如果要得到分钟就乘60

我写了一个把当前时间计算为秒的过程,
就是把当前时间和1970年的1月1日0点相减得到的时间

--drop procedure ps_time_to_int;
create procedure ps_time_to_int(v_intime  datetime year to second ) --传入时间
                               returning int;            --总共耗秒
--函数名      :转换时间
--函数功能    :把系统传入时间转换为标准UTC时间
--函数编写员  :white.fox
--函数编写日期:2005-07-16
--vari
define   v_time        interval second(9) to second;
define   v_returntime  varchar(255);

if  v_intime<='2030-01-01 00:00:00' then
     let v_time=v_intime-'2000-01-01 00:00:00';
     let v_returntime=v_time;
     let v_returntime='946684800'+v_returntime;
else
     let v_time=v_intime-'2030-01-01 00:00:00';
     let v_returntime=v_time;
     let v_returntime='189345600'+v_returntime;
end if;
     let v_returntime=to_int(v_returntime);
return  v_returntime;
end procedure ;

然后就可以计算了
select first 1 ps_time_to_int(a) -ps_time_to_int(b) from
tabname
其中a、 b  为需要相减的时间

论坛徽章:
0
4 [报告]
发表于 2005-07-17 12:49 |只看该作者

关于日期的计算问题

原创,定呀!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP