datepart()
日付から指定した日付構成要素を抽出して整数で返します。
構文
datepart(DATE, DATEPART)
パラメーター
DATE- 日付を返す式です。
DATEPART- 抽出する日付構成要素を表す定数文字列です。サポートする値は次のとおりです。
| 型指定子 | 返り値の型 | 説明 | 例 |
|---|---|---|---|
century | 32ビット整数 | 世紀 | 21 |
day | 32ビット整数 | 日付(1~31) | 12 |
decade | 32ビット整数 | 年を10で割った商 | 201 |
dow | 32ビット整数 | 曜日。日曜日(0)~土曜日(6) | 1 |
doy | 32ビット整数 | その年の何日目か | 163 |
epoch | 64ビット整数 | 1970年1月1日から経過した秒数 | 1497269156 |
hour | 32ビット整数 | 24時間制の時(0~23) | 21 |
isodow | 32ビット整数 | ISO 8601基準の曜日。月曜日(1)~日曜日(7) | 1 |
isoyear | 32ビット整数 | ISO 8601基準の年(その年の最初の木曜日を含む週の年) | 2017 |
microseconds | 32ビット整数 | 現在の分内での秒とマイクロ秒を合計した値(ミリ秒 × 1000) | 56371000 |
millennium | 32ビット整数 | ミレニアム(千年単位) | 3 |
milliseconds | 32ビット整数 | 現在の分内での秒とミリ秒を合計した値 | 56371 |
min, minute | 32ビット整数 | 分(0~59) | 5 |
mon, month | 32ビット整数 | 月(1~12) | 6 |
msec | 32ビット整数 | 現在の秒内でのミリ秒(milliseconds % 1000) | 377 |
quarter | 32ビット整数 | 四半期(1~4) | 2 |
sec, second | 32ビット整数 | 秒(0~59) | 56 |
timezone | 32ビット整数 | UTC基準のタイムゾーンオフセット(秒単位) | 32400 |
timezone_hour | 32ビット整数 | UTC基準のタイムゾーンオフセット(時単位) | 9 |
timezone_minute | 32ビット整数 | UTC基準のタイムゾーンオフセットから時を除いた分 | 0 |
week | 32ビット整数 | ISO 8601基準の年内の週番号 | 24 |
year | 32ビット整数 | 年 | 2017 |
説明
datepart() 関数は DATE から DATEPART で指定した構成要素を抽出します。epoch を指定すると64ビット整数を返し、それ以外は32ビット整数を返します。
DATE が null であるか日付型でない場合は null を返します。
エラーコード
90880- DATEPART が
nullであるか文字列でない場合に発生します。 90881- DATEPART の値が無効な場合に発生します。
typeパラメーターに無効な型指定子が含まれます。
使用例
これらの使用例で参照する WEB_APACHE_SAMPLE テーブルを準備するには、クエリ実習用データを参照してください。
-
アクセスログの時刻から時(hour)を抽出します。
table limit=5 WEB_APACHE_SAMPLE | eval result = datepart(_time, "hour") | fields _time, result -
アクセスログの時刻から月を抽出します。
table limit=5 WEB_APACHE_SAMPLE | eval result = datepart(_time, "mon") | fields _time, result -
アクセスログの時刻のUnix epoch値を抽出します。
table limit=5 WEB_APACHE_SAMPLE | eval result = datepart(_time, "epoch") | fields _time, result -
null入力json "{}" | eval result = datepart(null, "year") | # result: null
互換性
datepart() 関数はSonar 4.0以前のバージョンから提供されています。