Amazon Timestream for LiveAnalytics に類似した機能をご希望の場合は Amazon Timestream for InfluxDB をご検討ください。リアルタイム分析に適した、シンプルなデータインジェストと 1 桁ミリ秒のクエリ応答時間を特徴としています。詳細については、こちらを参照してください。
翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
日付/時間関数
注記
Timestream for LiveAnalytics は負の時間値をサポートしていません。負の時間になるオペレーションはエラーになります。
Timestream for LiveAnalytics は、日付と時刻に UTC タイムゾーンを使用します。Timestream は、次の日付と時刻の関数をサポートしています。
一般および変換
Timestream for LiveAnalytics は、日付と時刻に関する次の一般的な関数と変換関数をサポートしています。
| 関数 | 出力データ型 | 説明 |
|---|---|---|
|
current_date |
date |
UTC で現在の日付を返します。括弧は使用されません。
結果の例: 注記これは予約キーワードでもあります。予約キーワードの一覧については、「予約済みキーワード」を参照してください。 |
|
current_time |
時間 |
UTC で現在の時刻を返します。括弧は使用されません。
結果の例: 注記これは予約キーワードでもあります。予約キーワードの一覧については、「予約済みキーワード」を参照してください。 |
|
current_timestamp または now() |
timestamp |
UTC で現在のタイムスタンプを返します。
結果の例: 注記これは予約キーワードでもあります。予約キーワードの一覧については、「予約済みキーワード」を参照してください。 |
|
current_timezone() |
varchar 値は「UTC」になります。 |
Timestream は、日付と時刻に UTC タイムゾーンを使用します。
結果の例: |
|
date(varchar(x))、date(timestamp) |
date |
結果の例: |
|
last_day_of_month(timestamp)、last_day_of_month(date) |
date |
結果の例: |
|
from_iso8601_timestamp(string) |
timestamp |
ISO 8601 タイムスタンプを内部タイムスタンプ形式に解析します。
結果の例: |
|
from_iso8601_date(string) |
date |
ISO 8601 の日付文字列を、指定された日付の UTC 00:00:00 の内部タイムスタンプ形式に解析します。
結果の例: |
|
to_iso8601(timestamp)、to_iso8601(date) |
varchar |
入力の ISO 8601 形式の文字列を返します。
結果の例: |
|
from_milliseconds(bigint) |
timestamp |
結果の例: |
|
from_nanoseconds(bigint) |
timestamp |
結果の例: |
|
from_unixtime(double) |
timestamp |
指定された unixtime に対応するタイムスタンプを返します。
結果の例: |
|
localtime |
時間 |
UTC で現在の時刻を返します。括弧は使用されません。
結果の例: 注記これは予約キーワードでもあります。予約キーワードの一覧については、「予約済みキーワード」を参照してください。 |
|
localtimestamp |
timestamp |
UTC で現在のタイムスタンプを返します。括弧は使用されません。
結果の例: 注記これは予約キーワードでもあります。予約キーワードの一覧については、「予約済みキーワード」を参照してください。 |
|
to_milliseconds(interval day to second)、to_milliseconds(timestamp) |
bigint |
結果の例:
結果の例: |
|
to_nanoseconds(interval day to second)、to_nanoseconds(timestamp) |
bigint |
結果の例:
結果の例: |
|
to_unixtime(timestamp) |
double |
指定されたタイムスタンプの unixtime を返します。
結果の例: |
|
date_trunc(unit, timestamp) |
timestamp |
単位に切り捨てられたタイムスタンプを返します。単位は [秒、分、時間、日、週、月、四半期、年] のいずれかです。
結果の例: |
間隔と期間
Timestream for LiveAnalytics は、日付と時刻に関する次の間隔関数と期間関数をサポートしています。
| 関数 | 出力データ型 | 説明 |
|---|---|---|
|
date_add(unit, bigint, date)、date_add(unit, bigint, time)、date_add(varchar(x), bigint, timestamp) |
timestamp |
単位の bigint を追加します。単位は [秒、分、時間、日、週、月、四半期、年] のいずれかです。
結果の例: |
|
date_diff(unit, date, date)、date_diff(unit, time, time)、date_diff(unit, timestamp, timestamp) |
bigint |
差を返します。単位は [秒、分、時間、日、週、月、四半期、年] のいずれかです。
結果の例: |
|
parse_duration(string) |
interval |
入力文字列を解析して
結果の例:
結果の例: |
bin(timestamp, interval) |
timestamp |
この戻り値の意味は明確でない場合があります。最初に整数演算を使用してタイムスタンプ整数を間隔整数で除算し、次にその結果を間隔整数で乗算して計算します。 タイムスタンプは、POSIX エポック (1970 年 1 月 1 日) から経過した 1 秒の小数点以下の数値として UTC ポイントを指定することに注意してください。戻り値が暦の単位と一致することはほとんどありません。例えば、30 日間の間隔を指定すると、エポックからのすべての日が増分で 30 日単位に分割され、暦月とは関係のない直近の増分の 30 日の開始値が返されます。 次に例を示します。
|
|
ago(interval) |
timestamp |
current_timestamp
結果の例: |
|
1h、1d、30m などの間隔リテラル |
interval |
間隔リテラルは、parse_duration(string) の便利な機能です。例えば、 |
一部の間隔リテラルは、parse_duration の簡易表現として機能します。例えば、parse_duration('1day')、1day、parse_duration('1d')、1d はそれぞれ、型が interval day to second である 1
00:00:00.000000000 を返します。スペースは、parse_duration の指定された形式で許可されます。例えば、parse_duration('1day') は 00:00:00.000000000 も返します。ただし、1 day は間隔リテラルではありません。
interval day to second に関連する単位は、ns、ナノ秒、us、マイクロ秒、ms、ミリ秒、s、秒、m、分、h、時間、d、日です。
interval year to month もあります。interval year to month に関連する単位は、y、年、月です。例えば、SELECT 1year は 1-0 を返します。SELECT 12month も 1-0 を返します。SELECT 8month は 0-8 を返します。
quarter の単位は、date_trunc、date_add、quarter などの一部の関数でも使用できますが、間隔リテラルの一部としては使用できません。
フォーマットと解析
Timestream for LiveAnalytics は、日付と時刻に関する次のフォーマット関数と解析関数をサポートしています。
| 関数 | 出力データ型 | 説明 |
|---|---|---|
|
date_format(timestamp, varchar(x)) |
varchar |
この関数で使用される書式指定子の詳細については、https://trino.io/docs/current/functions/datetime.html#mysql-date-functions
結果の例: |
|
date_parse(varchar(x), varchar(y)) |
timestamp |
この関数で使用される書式指定子の詳細については、https://trino.io/docs/current/functions/datetime.html#mysql-date-functions
結果の例: |
|
format_datetime(timestamp, varchar(x)) |
varchar |
この関数で使用される書式文字列の詳細については、http://joda-time.sourceforge.net/apidocs/org/joda/time/format/DateTimeFormat.html
結果の例: |
|
parse_datetime(varchar(x), varchar(y)) |
timestamp |
この関数で使用される書式文字列の詳細については、http://joda-time.sourceforge.net/apidocs/org/joda/time/format/DateTimeFormat.html
結果の例: |
抽出
Timestream for LiveAnalytics は、日付と時刻に関する次の抽出関数をサポートしています。抽出関数は利便性が高く、残りの関数の基礎となります。
| 関数 | 出力データ型 | 説明 |
|---|---|---|
|
extract |
bigint |
タイムスタンプからフィールドを抽出します。ここで、フィールドは [YEAR、QUARTER、MONTH、WEEK、DAY、DAY_OF_MONTH、DAY_OF_WEEK、DOW、DAY_OF_YEAR、DOY、YEAR_OF_WEEK、YOW、HOUR、MINUTE、SECOND] のいずれかです。
結果の例: |
|
day(timestamp)、day(date)、day(interval day to second) |
bigint |
結果の例: |
|
day_of_month(timestamp)、day_of_month(date)、day_of_month(interval day to second) |
bigint |
結果の例: |
|
day_of_week(timestamp)、day_of_week(date) |
bigint |
結果の例: |
|
day_of_year(timestamp)、day_of_year(date) |
bigint |
結果の例: |
|
dow(timestamp)、dow(date) |
bigint |
day_of_week のエイリアス |
|
doy(timestamp)、doy(date) |
bigint |
day_of_year のエイリアス |
|
hour(timestamp)、hour(time)、hour(interval day to second) |
bigint |
結果の例: |
|
millisecond(timestamp)、millisecond(time)、millisecond(interval day to second) |
bigint |
結果の例: |
|
minute(timestamp)、minute(time)、minute(interval day to second) |
bigint |
結果の例: |
|
month(timestamp)、month(date)、month(interval year to month) |
bigint |
結果の例: |
|
nanosecond(timestamp)、nanosecond(time)、nanosecond(interval day to second) |
bigint |
結果の例: |
|
quarter(timestamp)、quarter(date) |
bigint |
結果の例: |
|
second(timestamp)、second(time)、second(interval day to second) |
bigint |
結果の例: |
|
week(timestamp)、week(date) |
bigint |
結果の例: |
|
week_of_year(timestamp)、week_of_year(date) |
bigint |
週のエイリアス |
|
year(timestamp)、year(date)、year(interval year to month) |
bigint |
結果の例: |
|
year_of_week(timestamp)、year_of_week(date) |
bigint |
結果の例: |
|
yow(timestamp)、yow(date) |
bigint |
year_of_week のエイリアス |