Skip to main content

This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.Opens in a new tab

For information on migrating to InterSystems IRISOpens in a new tab, see Why Migrate to InterSystems IRIS?

LAST_DAY

日付式に対してその月の最後の日付を返す日付関数です。

Synopsis

LAST_DAY(date-expression)

引数

date-expression 列の名前や、他のスカラ関数の結果、または日付やタイムスタンプ・リテラルである式。

概要

LAST_DAY は、指定した月の最後の日付を $HOROLOG 形式の整数として返します。うるう年の違いが計算されます (2000 年はうるう年で 1900 年と 2100 年はうるう年ではないという、1 世紀の日付調整など)。

date-expression には、Caché 日付整数、$HOROLOG 値や $ZTIMESTAMP 値、ODBC 形式の日付文字列、またはタイムスタンプを指定できます。

date-expression タイムスタンプはデータ型 %Library.TimeStampOpens in a new tab (yyyy-mm-dd hh:mm:ss.fff) です。

%TimeStamp 文字列の時刻部分はオプションです。date-expression は、%Library.FilemanDate、%Library.FilemanTimestamp、%MV.Date のいずれかのデータ型として指定することもできます。

無効な日付を指定すると、LAST_DAY は 0 (表示モードでは 12/31/1840) を返します。無効な日付とは、日または月が 0、12 より大きい月、または該当年の該当月の日数を上回る日付です。

この関数は、ObjectScript から LASTDAY()Opens in a new tab メソッド呼び出しを使用して呼び出すこともできます。

  WRITE $SYSTEM.SQL.LASTDAY("2004-02-25"),!
  WRITE $SYSTEM.SQL.LASTDAY(59590)

以下の例では、月の最後の日付を Caché 日付整数として返しています。この値が整数として表示されるか日付文字列として表示されるかは、現在の SQL Display モード設定に依存します。

以下の 2 つの例は、指定した日付が含まれる月の最後の日が 2 月 29 日であるため (2004 年はうるう年です)、両方とも ('2004–02–29' に対応する) 59594 を返します。

SELECT LAST_DAY('2004-02-25')
SELECT LAST_DAY(59590)

以下の例はすべて、現在の月の最後の日付に相当する Caché 日付整数を返します。

SELECT LAST_DAY({fn NOW()}) AS LD_Now,
       LAST_DAY(CURRENT_DATE) AS LD_CurrDate,
       LAST_DAY(CURRENT_TIMESTAMP) AS LD_CurrTstamp,
       LAST_DAY($ZTIMESTAMP) AS LD_ZTstamp,
       LAST_DAY($HOROLOG) AS LD_Horolog

関連項目

FeedbackOpens in a new tab