今天看SUN服务器是的mail(vi   /var/mail/xxxuser),发现定时任务上的一些存储过程执行有错误,其中有一个错误是long transaction,长事务错误,到数据库一查,天哪,一天就十几万条记录,我写的存储过程时间上只是精确到月,一个月的数据一次删除,还好数据库没罢工,之前定义到月是因为informix中日期字段不能直接减去天数做运算,这种态度不可取~~~,只好重写存储过程,时间精确到天,下面是具体的informix时间运算。ORACLE的时间字段可以直接减去(加上)天数运算(select  sysdate-365  from  dual;)。
 
下面的语句中extend用来限制到年、月、日,interval是说明间隔数
 
减去(加上)天数,interval最多取两位
从time_stamp字段减去两天时间
select extend(time_stamp-interval(2) day to day) from users;
从当前时间减去两天
select extend(current-interval(2) day to day) from users;
 
 
减去(加上)月数,interval最多取两位
从time_stamp字段减去两个月
select extend(time_stamp-interval(2) month to month) from users;
从当前时间减去两个月
select extend(current-interval(2) month to month) from users;
 
减去(加上)年数,interval最多取四位
从time_stamp字段减去两个年
select extend(time_stamp-interval(2) year to year) from users;
从当前时间减去两年
select extend(current-interval(2) year to year) from users;
 
试了一下,上面的写法会显示到毫秒,如
2004-09-11 17:24:03.000 
2004-09-11 17:24:03.000 
2004-09-11 17:24:03.000
 
可以再加个extend限制,如下
显示到月
select extend(((extend(current-interval(2) day to day))),year to month) from users;
显示到天
select extend(((extend(current-interval(2) month to month))),year to day) from users;
显示到秒
select extend(((extend(current-interval(2) year to year))),year to second) from users;
 
 
 
上面讲的是其中一种方法,今天又学到一种,可以用units关键字。
 
 
--年
select current-5 units year from users
 
--月
select current-5 units month from users
 
--日
select current-5 units day from users
 
--时
select current-5 units hour from users
 
--分
select current-5 units minute from users
 
--秒
select current-5 units second from users
 
 
 
转载请注明详细出处,谢谢合作^_^

informix中的时间计算的更多相关文章

  1. [webrtc] rtcp模块中rtt时间计算

    RTT指 round-trip time,即计算AB两端的往返时延 这里可以分成两个问题: 如何在A端估算A和B之间的RTT时间? 如何在B端估算A和B之间的RTT时间? 本文参考资料:rfc 355 ...

  2. 关于js中的时间——计算时间差等

    获取当前(系统)时间: var NowDate= new Date(); // 获取当前日期时间 // 输出为: Wed May 03 2017 14:52:08 GMT+0800 (中国标准时间) ...

  3. Delphi中获取Unix时间戳及注意事项(c语言中time()是按格林威治时间计算的,比北京时间多了8小时)

    uses DateUtils;DateTimeToUnix(Now) 可以转换到unix时间,但是注意的是,它得到的时间比c语言中time()得到的时间大了8*60*60这是因为Now是当前时区的时间 ...

  4. NET MVC全局异常处理(一) 【转载】网站遭遇DDoS攻击怎么办 使用 HttpRequester 更方便的发起 HTTP 请求 C#文件流。 Url的Base64编码以及解码 C#计算字符串长度,汉字算两个字符 2019周笔记(2.18-2.23) Mysql语句中当前时间不能直接使用C#中的Date.Now传输 Mysql中Count函数的正确使用

    NET MVC全局异常处理(一)   目录 .NET MVC全局异常处理 IIS配置 静态错误页配置 .NET错误页配置 程序设置 全局异常配置 .NET MVC全局异常处理 一直知道有.NET有相关 ...

  5. mysql中时间计算函数SQL DATE_SUB()用法

    本文为博主原创,未经允许不得转载: 在写sql的时候,经常要在sql中传值时间,对时间进行计算并过滤.之前都是将时间在后台计算好,直接传值给sql, 今天发现,有一个更方便的sql函数,可以简化很多代 ...

  6. javaScript系列:js中获取时间new Date()详细介绍

    var myDate = new Date();myDate.getYear(); //获取当前年份(2位)myDate.getFullYear(); //获取完整的年份(4位,1970-????)m ...

  7. 数据库SQL语句中根据当前日期计算其他日期小结

    问题描述:我们在写存储过程和函数的时候经常会碰到利用当前日期计算出上周开始日期.结束日期,或者计算上个月的开始日期结束日期等问题.最近写了几个存储过程和函数,其中都涉及到了日期计算问题,在这里简单做一 ...

  8. C程序中对时间的处理——time库函数详解

    包含文件:<sys/time.h> <time.h> 一.在C语言中有time_t, tm, timeval等几种类型的时间 1.time_t time_t实际上是长整数类型, ...

  9. java中关于时间的格式化

    long time = System.currentTimeMillis(); SimpleDateFormat format = new SimpleDateFormat(); String s = ...

随机推荐

  1. C#客户端(WinForm)开机自动启动实现

    /// <summary> /// 修改程序在注册表中的键值 /// </summary> /// <param name="isAuto">t ...

  2. Spring JDBC删除数据

    以下示例将展示如何使用Spring jdbc执行删除数据库表中的记录,这里演示如何删除指定student表中的记录. 语法: String deleteQuery = "delete fro ...

  3. WCF Service 配置文件注释(转)

    VS 2008 SP1(不确定是否不打SP1是否有)自带的一个编辑工具,可以更快的帮助定制配置文件, 以前看到过没有注意, 昨天正好一个同事提起, 这里记录一笔:打开VS 2008->Tools ...

  4. [ACM] POJ 1611 The Suspects (并查集,输出第i个人所在集合的总人数)

    The Suspects Time Limit: 1000MS   Memory Limit: 20000K Total Submissions: 21586   Accepted: 10456 De ...

  5. Xianfeng轻量级Java中间件平台:功能管理

    功能管理:从功能类型来看,不属于用户使用的功能,而属于系统维护使用的功能,因为对于用户来说,是不可见的.功能管理的作用是定义一套规则,用来处理权限等业务,比如常见的菜单权限控制.按钮权限控制等情景 在 ...

  6. Xianfeng轻量级Java中间件平台:流水号管理、组织机构管理

    流水号管理:现实中,经常都会和流水号打交道,至于什么是流水号,简而言之,就是按照特定格式要求产生的一个号码,并且总是按照递增的规则生成的,对于要求比较高的业务,需要流水号是连续的,比如移动营业厅排号小 ...

  7. 逻辑卷管理LVM 扩容LV容量实例(一)

    实验环境: 一台Linux 服务器添加两块硬盘,一块硬盘容量30G,另一块硬盘容量50G,采用VMware Workstation虚拟机进行模拟实验. 30G硬盘先分成一个分区,分区大小为25G,再创 ...

  8. fence-agents kvm 实验

    1, Method of installing fence-agents on linux: $ git clone https://github.com/ClusterLabs/fence-agen ...

  9. MySQL时间戳时间

    MySQL中: now():获取当前时间:例:SELECT now(); unix_timestamp():将时间转换为时间戳:例: SELECT unix_timestamp(now());

  10. 多目标线性规划求解方法及matlab实现

    转载: https://blog.csdn.net/wzl1997/article/details/79120323