日期时间函数有助于informix

时间:2013-09-24 11:48:29

标签: sql date informix

我如何使用日期添加或日期差异功能我有一个场景,我需要找到生日是今天或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;

1 个答案:

答案 0 :(得分:7)

你可以这样做:

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;

您使用来自MONTH的{​​{1}}和DAY以及bdate的{​​{1}}来构建日期。然后你会看到它是否在你想要匹配的日期之间。

Documentation for MDY

  

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

     
      
  • 第一个参数表示月份的编号(1到12)。
  •   
  • 第二个参数表示当月的日期数(1到28,29,30或31,适用于该月)
  •   
  • 第三个表达式代表4位数年份。您不能使用2位数字缩写。
  •