日付/時刻関数
- 構文は表1を参照。
- インターバル・データ型については、Netezza Performance ServerSQL インターバル・サポートを参照してください。
- データ/時間の単位については、「日付と時刻の値を抽出する」を参照してください。
| タイプ | 説明 |
|---|---|
add_months(date,n) |
整数 n で示された月数を加えた、date に対応する日付を返します。 結果の日付が、結果の月に存在する日数よりも多い場合、その月の最終日が返されます。 それ以外では、返される日付のうちの日の部分は、date のものと同じになります。 例:add_months('March 03, 2015',2) 「'2015-05-03 00:00:00'「「 add_months('March 31, 2015',-1)「'2015-02-28 00:00:00'」を返す。 |
age(ts,ts)age(ts) |
2 つの timestamp 間のインターバルを返します。 返す値は、最も精度の高い引数と同じ精度になります。 例:
age(CURRENT_TIMESTAMP,
ts)」と同じ意味である。Netezza Performance ServerのSQL インターバルサポートは非標準です。 |
date_part(units,col) |
col に指定された日付/時刻値、インターバル、または期間から、units で表されたサブフィールドを抽出します。 この関数は extract() と等価です。 |
date_trunc(units,date) |
date に指定された日付を、units で指定された精度になるように切り捨てます。 |
extract(units FROM col) |
col に指定された日付/時刻値、インターバル、または期間から、units で表されたサブフィールドを抽出します。 この関数は date_part() と等価です。 |
last_day(date) |
指定された日付の月の最終日を返します。 |
months_between(d1,d2) |
日付 d1 と日付 d2 の間の月数を返します。
|
next_day(date,weekday) |
特定の日付の翌日にあたる週日を返します。 date 引数には、日付またはタイム・スタンプを指定できます。 戻り値のフォーマットは、date 引数のフォーマットと同じです。
select next_day('12-25-2013','Saturday') 戻り値 '2013-12-28' |
now() |
この関数は current_timestamp と同等です。 詳細については、変換関数を参照してください。 |
overlaps(a,b,c,d) |
2 つの時間間隔が重複しているかどうかを判別します。 以下のデータ型を使用できます。
|
duration_add(a,b) |
2 つの引数 (a と b が表す) を加算して得られる期間を返します。 引数のデータ型の有効な組み合わせは表2に記載されている。 |
duration_subtract(a,b) |
第 1 引数 (a) から第 2 引数 (b) を引いた持続時間を返す。引数のデータ型の有効な組み合わせは表 3 に示す。 |
timeofday() |
current_timestamp 関数を詳細なストリングで記述したものであり、 例えば、Mon 01 Dec 2014 16:12:05 EST などです。 出力の形式は、使用する変換関数によって決まります(変換関数を参照) |
timezone(timestamp from_tz to_tz) |
from_tz タイム・ゾーンの入力タイム・スタンプ値から、to_tz タイム・ゾーン値のタイム・スタンプに変換します。 例:システムは、ICU ライブラリーを使用することで、指定されたタイム・ゾーン値を検査して解決します。 |
| 1 番目の引数のデータ型 | 2 番目の引数のデータ型 | 戻り |
|---|---|---|
| 日付 | numeric(8,0) | 日付 |
| 時間 | numeric(6,0) | 時間 |
| タイム・スタンプ | numeric(6,0) | タイム・スタンプ |
| numeric(8,0) | ||
| numeric(14,0) | ||
| numeric(15,1) | ||
| numeric(16,2) | ||
| numeric(17,3) | ||
| numeric(18,4) | ||
| numeric(19,5) | ||
| numeric(20,6) |
| 1 番目の引数のデータ型 | 2 番目の引数のデータ型 | 戻り |
|---|---|---|
| 日付 | 日付 | numeric(8,0) |
| numeric(8,0) | 日付 | |
| 時間 | 時間 | numeric(6,0) |
| numeric(6,0) | 時間 | |
| タイム・スタンプ | タイム・スタンプ | numeric(20,6) |
| numeric(6,0) | タイム・スタンプ | |
| numeric(8,0) | ||
| numeric(14,0) | ||
| numeric(15,1) | ||
| numeric(16,2) | ||
| numeric(17,3) | ||
| numeric(18,4) | ||
| numeric(19,5) | ||
| numeric(20,6) |
- numeric(6,0) 型は、hhmmss 形式の期間を表します。例えば、3 時間 7 分 45 秒の場合は 030745 となります。
- numeric(8,0) 型は、YYYYMMDD 形式の期間を表します。例えば、2 年 5 カ月 25 日の場合は 00020525 となります。
- 他の数値は、以下のように 14 から 20 桁で構成されます。
- 最初の 8 桁は、YYYYMMDD の形式で期間の日付の部分を表します。
- 次の 6 桁は、hhmmss の形式で期間の時間の部分を表します。
- 次の 0 から 6 桁は、秒の小数部を表します。
00010521010521999::numeric(17,3)という期間は、1 年 5 カ月 21 日 1 時間 5 分 21.999 秒の期間を表します。