資料の 英語版 に戻る日付/時刻関数
日付と時刻関数 (SPSS Modeler)
最終更新: 2024年10月07日
CLEMには、日付や時刻を表す文字列変数のdatetimeストレージを持つフィールドを処理するための関数群があります。
使用される日時の形式はフローごとに固有であり、フロー・プロパティーで指定されます。 日付と時間の関数は、現在選択されている形式に従って、日付と時間の文字列を解析します。
日付の年を2 桁の数字のみを使用して指定(つまり、世紀が指定されていない) すると、SPSS Modeler はフロー・プロパティーで指定されたデフォルトの世紀を使用します。
関数 | 結果 | 説明 |
---|---|---|
@TODAY |
String | フロー・プロパティーで ロールオーバー日数/分 を選択した場合、この関数は現在の日付を現在の日付形式の文字列として返します。 2 桁の日付形式を使用し、 「日/分のロールオーバー」を選択しない場合、この関数は現行サーバーで $null$ を返します。 |
to_time(ITEM) |
時刻 | 指定されたフィールドのストレージを時間に変換します。 |
to_date(ITEM) |
日付 | 指定されたフィールドのストレージを日付に変換します。 |
to_timestamp(ITEM) |
タイム・スタンプ | 指定されたフィールドのストレージをタイムスタンプに変換します。 |
to_datetime(ITEM) |
Datetime | 指定されたフィールドのストレージを日付、時間またはタイムスタンプ値に変換します。 |
datetime_date(ITEM) |
日付 | 数字、文字列、または タイム・スタンプの日付値を返します。 この機能だけが、数値 (秒単位) を日付に変換できるので注意してください。 ITEM が文字列の場合は、現在のデータ形式で文字列を解析することにより日付を作成します。 この機能を正常に実行するには、フロー・プロパティーに指定されている日付形式が正しくなければなりません。 ITEM が数値の場合は、基準日 (またはエポック) からの秒数として解釈されます。 日付の端数は切り捨てられます。 ITEM がタイムスタンプの場合は、日付をタイムスタンプの一部として返します。 ITEM が日付の場合は、変更されずに返されます。 |
date_before(DATE1, DATE2) |
ブール値 | DATE1 が DATE2 より前の日付またはタイムスタンプの場合に true を返します。 それ以外の場合、この関数は 0 の値を返します。 |
date_days_difference(DATE1, DATE2) |
整数 | 日付またはタイムスタンプ DATE1 から日付またはタイムスタンプ DATE2 までの日数を整数で返します。 DATE2 が DATE1 よりも前の場合、この関数は負の数値を返します。 |
date_in_days(DATE) |
整数 | 基準日から DATE で表される日付またはタイムスタンプまでの日数を整数で返します。 DATE が基準日より前の場合、この関数は負の数値を返します。 計算を適正に行うには、有効な日付を指定する必要があります。 例えば、日付として 2001 年 2 月 29 日を指定することはできません。 2001年はうるう年ではないため、この日付は存在しません。 |
date_in_months(DATE) |
Real | 基準日から DATE で表される日付またはタイムスタンプまでの月数を実数で返します。 これは、1 カ月を 30.4375 日と仮定した近似値になります。 DATE が基準日より前の場合、この関数は負の数値を返します。 計算を適正に行うには、有効な日付を指定する必要があります。 例えば、日付として 2001 年 2 月 29 日を指定することはできません。 2001年はうるう年ではないため、この日付は存在しません。 |
date_in_weeks(DATE) |
Real | 基準日から DATE で表される日付またはタイムスタンプまでの週数を実数で返します。 ここでは、1 週間を 7.0 日と仮定しています。 DATE が基準日より前の場合、この関数は負の数値を返します。 計算を適正に行うには、有効な日付を指定する必要があります。 例えば、日付として 2001 年 2 月 29 日を指定することはできません。 2001年はうるう年ではないため、この日付は存在しません。 |
date_in_years(DATE) |
Real | 基準日から DATE で表される日付またはタイムスタンプまでの年数を実数で返します。 これは、1 年 365.25 日を基準とした近似値になります。 DATE が基準日より前の場合、この関数は負の数値を返します。 計算を適正に行うには、有効な日付を指定する必要があります。 例えば、日付として 2001 年 2 月 29 日を指定することはできません。 2001年はうるう年ではないため、この日付は存在しません。 |
date_months_difference (DATE1, DATE2) |
Real | 日付またはタイムスタンプ DATE1 から日付またはタイムスタンプ DATE2 までの月数を実数で返します。 これは、1 カ月を 30.4375 日と仮定した近似値になります。 DATE2 が DATE1 よりも前の場合、この関数は負の数値を返します。 |
datetime_date(YEAR, MONTH, DAY) |
日付 | YEAR、MONTH、および DAY の日付値を作成します。 引数は整数でなければなりません。 |
datetime_day(DATE) |
整数 | 指定されたDATE またはタイムスタンプから、日付を返します。 結果は 1 から 31 の範囲の整数になります。 |
datetime_day_name(DAY) |
String | 指定された DAY のフルネームを返します。 引数は、1 (日曜) から 7 (土曜) の範囲の整数でなければなりません。 |
datetime_hour(TIME) |
整数 | TIME またはタイムスタンプから時間を返します。 結果は 0 から 23 の範囲の整数になります。 |
datetime_in_seconds(TIME) |
Real | TIME に保存された秒の部分を返します。 |
datetime_in_seconds(DATE) , datetime_in_seconds(DATETIME) |
Real | 現在の DATE または DATETIME と基準日の間の差 (1900-01-01) から集計した数値を秒に変換して返します。 |
datetime_minute(TIME) |
整数 | TIME またはタイムスタンプから分を返します。 結果は 0 から 59 の範囲の整数になります。 |
datetime_month(DATE) |
整数 | DATE またはタイムスタンプから月を返します。 結果は 1 から 12 の範囲の整数になります。 |
datetime_month_name (MONTH) |
String | 指定された MONTH のフルネームを返します。 引数は、1 から 12の範囲の整数でなければなりません。 |
datetime_now |
タイム・スタンプ | 現在の時刻をタイムスタンプとして返します。 |
datetime_second(TIME) |
整数 | TIME またはタイムスタンプから秒を返します。 結果は 0 から 59 の範囲の整数になります。 |
datetime_day_short_name (DAY) |
String | DAY の名前を省略形で返します。 引数は、1 (日曜) から 7 (土曜) の範囲の整数でなければなりません。 |
datetime_month_short_name (MONTH) |
String | MONTH の名前を省略形で返します。 引数は、1 から 12の範囲の整数でなければなりません。 |
datetime_time(HOUR, MINUTE, SECOND) |
時刻 | 指定された HOUR、MINUTE、および SECOND の時間値を返します。 引数は整数でなければなりません。 |
datetime_time(ITEM) |
時刻 | ITEM の時間値を返します。 |
datetime_timestamp(YEAR, MONTH, DAY,
HOUR, MINUTE, SECOND) |
タイム・スタンプ | 与えられた YEAR、MONTH、DAY、HOUR、MINUTE、および SECOND のタイムスタンプ値を返します。 |
datetime_timestamp(DATE, TIME) |
タイム・スタンプ | DATE および TIME のタイムスタンプ値を返します。 |
datetime_timestamp (NUMBER) |
タイム・スタンプ | 与えられた秒数のタイムスタンプ値を返します。 |
datetime_weekday(DATE) |
整数 | 指定されたDATE またはタイムスタンプから、曜日を返します。 |
datetime_year(DATE) |
整数 | DATE またはタイムスタンプから年を返します。 結果は2021 などの整数です。 |
date_weeks_difference (DATE1,
DATE2) |
Real | 日付またはタイムスタンプ DATE1 から日付またはタイムスタンプ DATE2 までの週数を実数で返します。 ここでは、1 週間を 7.0 日と仮定しています。 DATE2 が DATE1 よりも前の場合、この関数は負の数値を返します。 |
date_years_difference (DATE1, DATE2) |
Real | 日付またはタイムスタンプ DATE1 から日付またはタイムスタンプ DATE2 までの年数を実数で返します。 これは、1 年 365.25 日を基準とした近似値になります。 DATE2 が DATE1 よりも前の場合、この関数は負の数値を返します。 |
date_from_ywd(YEAR, WEEK, DAY) |
整数 | 年、年の週、および曜日を、ISO 8601 標準を使用して日付に変換します。 |
date_iso_day(DATE) |
整数 | ISO 8601 標準を使用して、日付の曜日を返します。 |
date_iso_week(DATE) |
整数 | ISO 8601 標準を使用して、日付から年の週を返します。 |
date_iso_year(DATE) |
整数 | ISO 8601 標準を使用して、日付から年を返します。 |
time_before(TIME1, TIME2) |
ブール値 | TIME1 が TIME2 より前の時間またはタイプスタンプの場合に真を返します。 それ以外の場合、この関数は 0 の値を返します。 |
time_hours_difference (TIME1, TIME2) |
Real | 時間またはタイプスタンプ TIME1 と TIME2 間の時間差 (時間) を実数で返します。 フロー・プロパティーでロールオーバー日数/分を選択すると、TIME1 の高い方の値が以前の日を参照します。 ロールオーバー・オプションを選択しない場合、 TIME1 の高い方の値が原因で、戻り値は負の値になります。 |
time_in_hours(TIME) |
Real | TIME で表される時間を実数で返します。 例えば、時間の形式 HHMM では、式 time_in_hours('0130') は 1.5 として評価されます。 TIME は時間またはタイムスタンプを示します。 |
time_in_mins(TIME) |
Real | TIME で表される分を実数で返します。 TIME は時間またはタイムスタンプを示します。 |
time_in_secs(TIME) |
整数 | TIME で表される秒を整数で返します。 TIME は時間またはタイムスタンプを示します。 |
time_mins_difference(TIME1, TIME2) |
Real | 時間またはタイプスタンプ TIME1 と TIME2 間の時間差 (分) を実数で返します。 フロー・プロパティーでロールオーバー日数/分を選択すると、直前の日付 (または、現在の形式で分と秒のみが指定されている場合は、直前の時刻) を参照するには TIME1 の高い方の値が確認されます。 ロールオーバー・オプションを選択しない場合、 TIME1 の高い方の値が原因で、戻り値は負の値になります。 |
time_secs_difference(TIME1, TIME2) |
整数 | TIME1と TIME2 の時間またはタイムスタンプの差異を秒で返します。 フロー・プロパティーでロールオーバー日数/分を選択すると、直前の日付 (または、現在の形式で分と秒のみが指定されている場合は、直前の時刻) を参照するには TIME1 の高い方の値が確認されます。 ロールオーバー・オプションを選択しない場合、 TIME1 の高い方の値が原因で、戻り値は負の値になります。 |