IBM® Informix® 12.10

DATE 関数

日付 (DATE) 型関数は、引数を日付 (DATE) 型値に変換します。

日付 (DATE) 型でない引数には、日付 (DATE) 型値に変換できるすべての式を使用できます。通常は、文字 (CHAR) 型、日時 (DATETIME) 型、または整数 (INTEGER) 型値です。次の WHERE 節は、文字 (CHAR) 型引数として引用符付き文字列を指定しています。
WHERE order_date < DATE('12/31/07')
DATE 関数が文字 (CHAR) 型の非日付 (DATE) 型式を解釈する場合、この式は環境変数 DBDATE で指定した日付 (DATE) 型フォーマットに準拠しているものと見なされます。例えば、次の問合せを実行するときに、DBDATEY2MD/ に 設定されているとします。
SELECT DISTINCT DATE('02/01/2008') FROM ship_info;

日付 (DATE) 型関数はこの文字列式を変換できないため、この SELECT 文ではエラーが生成されます。DATE 関数により、日付 (DATE) 型文字列の最初の部分 (02) は 年として解釈され、2 番目の部分 (01) は月として解釈されます。

DATE 関数では、3 番目の部分 (2008) は 2 桁の日付 (有効な日付の値は 01 から 31) になっている必要がありますが、4 桁の値が検出されます。このため、値を変換できません。DBDATE の値 Y2MD/ を使用して SELECT 文を正常に実行するには、引数は '08/02/01' である必要があります。DBDATE のフォーマットについては、「IBM Informix SQL ガイド: リファレンス」を参照してください。

日付 (DATE) 型値の表示およびデータ入力フォーマットを指定できる各 Informix® 環境変数の優先順位について詳しくは、日付 (DATE) 型フォーマットおよび日時 (DATETIME) 型フォーマットの指定の優先順位のトピックを参照してください。

非日付 (DATE) 型式に正の整数 (INTEGER) 型値を指定する場合、DATE 関数により、この値は 1899 年 12 月 31 日以降の日数として解釈されます。

整数値が負の場合、DATE 関数は、この値を 1899 年 12 月 31 日より前の日数として解釈します。次の WHERE 節には、非日付 (DATE) 型の式に整数値が指定されています。
WHERE order_date  <  DATE(365)

データベース サーバは、1900 年 12 月 31 日 (1899/12/31 + 365 日) より前の order_date 値を含む行を検索します。


フィードバックの送信 | 例の共有 | トラブルシューティング

PDF を見つけるには、Publications for the IBM Informix 12.10 family of products を参照してください。
リリース ノート、ドキュメント ノート、マシン ノートについては、リリース ノート・ページを参照してください。
タイムスタンプ リリース日: 2013 年 3 月