日付/時刻関数は、多種の日付/時刻型の操作を行なう強力なツール群 を提供します。
Table 5-5. 日付/時刻関数
関数 | 戻り値 | 説明 | 例 |
---|---|---|---|
abstime(datetime) | abstime | abstime 型に変換する。 | abstime('now'::datetime) |
age(datetime,datetime) | timespan | 保持される年月を返す。 | age('now','1957-06-13'::datetime) |
datetime(abstime) | datetime | datetime 型に変換する。 | datetime('now'::abstime) |
datetime(date) | datetime | datetime 型に変換する。 | datetime('today'::date) |
datetime(date,time) | datetime | datetime 型に変換する。 | datetime('1998-02-24'::datetime, '23:07'::time); |
date_part(text,datetime) | float8 | 日付から特定の部分を取り出す。 | date_part('dow','now'::datetime) |
date_part(text,timespan) | float8 | 日付から特定の部分を取り出す。 | date_part('hour','4 hrs 3 mins'::timespan) |
date_trunc(text,datetime) | datetime | 日付を切り詰める。 | date_trunc('month','now'::abstime) |
isfinite(abstime) | bool | 有限な時間か? | isfinite('now'::abstime) |
isfinite(datetime) | bool | 有限な時間か? | isfinite('now'::datetime) |
isfinite(timespan) | bool | 有限な時間か? | isfinite('4 hrs'::timespan) |
reltime(timespan) | reltime | reltime 型に変換する。 | reltime('4 hrs'::timespan) |
timespan(reltime) | timespan | timespan 型に変換する。 | timespan('4 hours'::reltime) |
date_part 関数と date_trunc 関数では、その引数に「 year 」、 「 month 」、「 day 」、「 hour 」、「 minute 」、「 second 」は もちろん、より量を絞り込むことができる「 decade 」、「 century 」、 「 millenium 」、「 millisecond 」、「 microsecond 」も使うことが できます。date_part では週の中で何番目の日か を返す「 dow 」と、( datetime 型の場合)1970 年から の秒数を返す「 epoch 」または( timespan 型の場合) 総経過秒数を返す「 epoch 」も使用できます。