7

日付の追加機能または日付の差分機能を使用するにはどうすればよいですか? 今日または 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;
4

1 に答える 1

8

次のようなことができます。

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;

MONTHDAYfrombdateおよびYEARfromを使用して MDY を使用して日付を作成しますTODAY。次に、一致させたい日付の間にあるかどうかを確認します。

MDY のドキュメント:

MDY 関数は、月、日、年を表す 3 つの整数式を引数として取り、DATE 型の値を返します。

  • 最初の引数は、月の数 (1 から 12) を表します。
  • 2 番目の引数は、月の日の数を表します (月に応じて、1 から 28、29、30、または 31 まで)
  • 3 番目の式は、4 桁の年を表します。2 桁の略語は使用できません。
于 2013-09-24T20:43:30.263 に答える