【问题标题】:Date time functions help informix日期时间函数帮助 informix
【发布时间】:2013-09-29 14:54:58
【问题描述】:

如何使用日期添加或日期差异函数我有一个场景,我需要找到生日在今天或 n 天之后的人。我如何在informix中实现它。

SELECT mbr_code, fname, lname
INTO rsMbrCode, rsFName, rsLName
FROM asamembr
WHERE cust_code = membershipnumber 
    AND ((day(bdate) - day(CURRENT)) <= rsTest 
    AND MONTH(bdate) = month(CURRENT))

RETURN rsMbrCode, rsFName, rsLName WITH RESUME;

【问题讨论】:

    标签: sql date informix


    【解决方案1】:

    你可以这样做:

    SELECT mbr_code,fname,lname
    INTO rsMbrCode,rsFName,rsLName
    FROM asamembr
    WHERE cust_code = membershipnumber 
        AND MDY(month(bdate),day(bdate),year(today)) 
        BETWEEN TODAY AND TODAY + <NUMBEROFDAYS> UNITS DAY;
    

    您使用使用 MDY 构造一个日期,其中 MONTHDAY 来自 bdateYEAR 来自 TODAY。然后你看看它是否在你想要匹配的日期之间。

    Documentation for MDY:

    MDY 函数将三个整数表达式作为其参数 表示月、日和年,并返回类型 DATE 值。

    • 第一个参数表示月份的编号(1 到 12)。
    • 第二个参数表示月份中的天数(1 到 28、29、30 或 31,视月份而定)
    • 第三个表达式代表 4 位数年份。不能使用 2 位数的缩写。

    【讨论】:

      猜你喜欢
      • 2011-05-10
      • 1970-01-01
      • 2023-04-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-13
      • 2012-05-07
      • 2012-03-20
      相关资源
      最近更新 更多