Simple Log Serviceでは、単位変換機能を使用して、測定値または時間間隔を現在の単位から別の単位に変換できます。 このトピックでは、単位変換関数の構文について説明します。 このトピックでは、単位変換関数の使用例についても説明します。
次の表に、Simple Log Serviceでサポートされている単位変換機能を示します。
分析ステートメントで文字列を使用する場合は、文字列を単一引用符 (')で囲む必要があります。 二重引用符 (") で囲まれていない、または囲まれている文字列は、フィールド名または列名を示します。 例えば、 'status' はステータスの文字列を示し、status または "status" はステータスログフィールドを示します。
カテゴリ | 関数 | 構文 | 説明 | SQLでサポート | SPLでサポート |
測定の単位変換 | convert_data_size( x) | 現在の単位から最適な単位に測定値を変換します。 システムは自動的に最適な単位を決定し、最適な単位で測定値を返します。 返される結果は文字列型です。 たとえば、1,024 KBを1 MBに、1,024 MBを1 GBに変換できます。 | √ | × | |
convert_data_size( x, unit) | 現在の単位から指定された単位に測定値を変換します。 返される結果は文字列型です。 | √ | × | ||
format_data_size( x, unit) | バイト単位の測定値を指定した単位の測定値に変換します。 返される結果は文字列型です。 | √ | × | ||
parse_data_size( x) | 測定値を現在の単位からバイト単位の測定値に変換します。 返される結果はdecimal型です。 | √ | × | ||
to_data_size_B( x) | 測定値を現在の単位からバイト単位の測定値に変換します。 返される結果はdouble型です。 | √ | × | ||
to_data_size_KB( x) | 測定値を現在の単位からKB単位の測定値に変換します。 返される結果はdouble型です。 | √ | × | ||
to_data_size_MB( x) | 測定値を現在の単位からMB単位の測定値に変換します。 返される結果はdouble型です。 | √ | × | ||
to_data_size_GB( x) | 測定値を現在の単位からGB単位の測定値に変換します。 返される結果はdouble型です。 | √ | × | ||
to_data_size_TB( x) | 測定値を現在の単位からTB単位の測定値に変換します。 返される結果はdouble型です。 | √ | × | ||
to_data_size_PB( x) | 現在の単位からの測定値をPBの測定値に変換します。 返される結果はdouble型です。 | √ | × | ||
時間間隔の単位変換 | format_duration( x) | 秒単位の時間間隔を読み取り可能な文字列に変換します。 | √ | × | |
parse_duration( x) | 時間間隔を | √ | × | ||
to_days( x) | 時間間隔を日単位の時間間隔に変換します。 | √ | × | ||
to_hours( x) | 時間間隔を時間間隔に変換します。 | √ | × | ||
to_マイクロ秒 (x) | 時間間隔をマイクロ秒単位の時間間隔に変換します。 | √ | × | ||
to_ms (x) | 時間間隔をミリ秒単位の時間間隔に変換します。 | √ | × | ||
to_minutes( x) | 時間間隔を分単位の時間間隔に変換します。 | √ | × | ||
to_most_succinct_time_unit( x) | 現在の単位から最適な単位に時間間隔を変換します。 システムは自動的に最適な単位を決定し、最適な単位で時間間隔を返します。 | √ | × | ||
to_necoses (x) | 時間間隔をナノ秒単位の時間間隔に変換します。 | √ | × | ||
to_seconds( x) | 時間間隔を秒単位の時間間隔に変換します。 | √ | × |
convert_data_size関数
convert_data_size関数は、測定値を現在の単位から別の単位に変換します。
構文
次の構文を使用する場合、関数は測定値を現在の単位から最適な単位に変換します。 システムは自動的に最適な単位を決定し、最適な単位で測定値を返します。
convert_data_size(x)
次の構文を使用すると、関数は測定値を現在の単位から指定された単位に変換します。
convert_data_size(x, unit)
パラメーター
パラメーター | 説明 |
x | 測定。 このパラメーターの値はstring型です。 |
ユニット | 保存されるデータの単位。 有効な値: KB、MB、GB、PB、TB、EB、ZB、およびYB。 |
戻り値のデータ型
文字列型。
例
例1: 1,200 KBを別の単位の測定値に変換します。
クエリ文
* | SELECT convert_data_size('1200KB')
クエリと分析結果
例2: body_bytes_sentフィールドの値をバイト単位でKB単位に変換します。 body_bytes_sentフィールドは、クライアントに送信されるバイト数を示します。
クエリ文
* | select convert_data_size(format_data_size(body_bytes_sent, 'KB'))
クエリと分析結果
format_data_size関数
format_data_size関数は、バイト単位の測定値を指定された単位の測定値に変換します。
構文
format_data_size(x, unit)
パラメーター
パラメーター | 説明 |
x | 測定値 (バイト単位) 。 このパラメーターの値はbigint型です。 |
ユニット | 保存されるデータの単位。 有効な値: KB、MB、GB、PB、TB、EB、ZB、およびYB。 |
戻り値のデータ型
文字列型。
例
例1: body_bytes_sentフィールドの値をバイト単位でKB単位に変換します。 body_bytes_sentフィールドは、クライアントに送信されるバイト数を示します。
サンプルフィールド
body_bytes_sent:4619
クエリ文
* | select format_data_size(body_bytes_sent, 'KB')
クエリと分析結果
例2: 総バイト数をGB単位の測定値に変換します。 合計バイト数は、sum関数を使用してbody_bytes_sentフィールドのすべての値を合計することによって計算されます。 body_bytes_sentフィールドは、クライアントに送信されるバイト数を示します。
サンプルフィールド
body_bytes_sent:4619
クエリ文
* | select format_data_size(sum(body_bytes_sent), 'GB')
クエリと分析結果
parse_data_size関数
parse_data_size関数は、現在の測定値をバイト単位の測定値に変換します。
構文
parse_data_size(x)
パラメーター
パラメーター | 説明 |
x | 測定。 このパラメーターの値はstring型です。 |
戻り値のデータ型
decimal型。
例
1,024 KBをバイト単位の測定値に変換します。
クエリ文
*| SELECT parse_data_size('1024KB')
クエリと分析結果
to_data_size_B関数
to_data_size_B関数は、現在の測定値をバイト単位の測定値に変換します。
構文
to_data_size_B(x)
パラメーター
パラメーター | 説明 |
x | 測定。 このパラメーターの値はstring型です。 |
戻り値のデータ型
ダブルタイプ。
例
1,024 KBをバイト単位の測定値に変換します。
クエリ文
* | select to_data_size_B('1024KB')
クエリと分析結果
to_data_size_KB関数
to_data_size_KB関数は、現在の測定値をKB単位の測定値に変換します。
構文
to_data_size_KB(x)
パラメーター
パラメーター | 説明 |
x | 測定。 このパラメーターの値はstring型です。 |
戻り値のデータ型
ダブルタイプ。
例
body_bytes_sentフィールドの値をKB単位の測定値に変換します。 body_bytes_sentフィールドは、クライアントに送信されるバイト数を示します。
クエリ文
* | select to_data_size_KB(format_data_size(body_bytes_sent, 'KB'))
クエリと分析結果
to_data_size_MB関数
to_data_size_MB関数は、現在の測定値をMB単位の測定値に変換します。
構文
to_data_size_MB(x)
パラメーター
パラメーター | 説明 |
x | 測定。 このパラメーターの値はstring型です。 |
戻り値のデータ型
ダブルタイプ。
例
合計バイト数をMB単位の測定値に変換します。 合計バイト数は、sum関数を使用してbody_bytes_sentフィールドのすべての値を合計することによって計算されます。 body_bytes_sentフィールドは、クライアントに送信されるバイト数を示します。
クエリ文
* | select to_data_size_MB(format_data_size(sum(body_bytes_sent), 'KB'))
クエリと分析結果
to_data_size_GB関数
to_data_size_GB関数は、現在の測定値をGB単位の測定値に変換します。
構文
to_data_size_GB(x)
パラメーター
パラメーター | 説明 |
x | 測定。 このパラメーターの値はstring型です。 |
戻り値のデータ型
ダブルタイプ。
例
合計バイト数をGB単位の測定値に変換します。 合計バイト数は、sum関数を使用してbody_bytes_sentフィールドのすべての値を合計することによって計算されます。 body_bytes_sentフィールドは、クライアントに送信されるバイト数を示します。
クエリ文
* | select to_data_size_GB(format_data_size(sum(body_bytes_sent), 'KB'))
クエリと分析結果
to_data_size_TB関数
to_data_size_TB関数は、現在の測定値をTBの測定値に変換します。
構文
to_data_size_TB(x)
パラメーター
パラメーター | 説明 |
x | 測定。 このパラメーターの値はstring型です。 |
戻り値のデータ型
ダブルタイプ。
例
総バイト数をTB単位の測定値に変換します。 合計バイト数は、sum関数を使用してbody_bytes_sentフィールドのすべての値を合計することによって計算されます。 body_bytes_sentフィールドは、クライアントに送信されるバイト数を示します。
クエリ文
* | select to_data_size_TB(format_data_size(sum(body_bytes_sent), 'KB'))
クエリと分析結果
to_data_size_PB関数
to_data_size_PB関数は、現在の測定値をPBの測定値に変換します。
構文
to_data_size_PB(x)
パラメーター
パラメーター | 説明 |
x | 測定。 このパラメーターの値はstring型です。 |
戻り値のデータ型
ダブルタイプ。
例
1,048,576 GBをPBでの測定値に変換します。
クエリ文
*| SELECT to_data_size_PB('1048576GB')
クエリと分析結果
format_duration関数
format_duration関数は、秒単位の時間間隔を読み取り可能な文字列に変換します。
構文
format_duration(x)
パラメーター
パラメーター | 説明 |
x | 時間間隔。 このパラメーターの値はdouble型です。 |
戻り値のデータ型
文字列型。
例
235秒を3分55秒
の形式の文字列に変換します。
クエリ文
* | SELECT format_duration(235)
クエリと分析結果
parse_duration関数
parse_duration関数は、時間間隔を0 00:00:00.000
形式の時間間隔に変換します。
構文
parse_duration(x)
パラメーター
パラメーター | 説明 |
x | 時間間隔。 このパラメーターの値はstring型です。 |
戻り値のデータ型
intervalタイプ。
例
1,340ミリ秒を0 00:00:01.340
の形式の時間間隔に変換します。
クエリ文
* | SELECT parse_duration('1340ms')
クエリと分析結果
to_days関数
to_days関数は、時間間隔を日単位の時間間隔に変換します。
構文
to_days(x)
パラメーター
パラメーター | 説明 |
x | 時間間隔。 このパラメーターの値はvarchar型です。 |
戻り値のデータ型
ダブルタイプ。
例
192,848秒を日数単位の時間間隔に変換します。
クエリ文
*| SELECT to_days('192848s')
クエリと分析結果
to_hours関数
to_hours関数は、時間間隔を時間単位の時間間隔に変換します。
構文
to_hours(x)
パラメーター
パラメーター | 説明 |
x | 時間間隔。 このパラメーターの値はvarchar型です。 |
戻り値のデータ型
ダブルタイプ。
例
1.2日を時間単位の時間間隔に変換します。
クエリ文
* | SELECT to_hours('1.2d')
クエリと分析結果
to_microseconds関数
to_microseconds関数は、時間間隔をマイクロ秒単位の時間間隔に変換します。
構文
to_microseconds(x)
パラメーター
パラメーター | 説明 |
x | 時間間隔。 このパラメーターの値はvarchar型です。 |
戻り値のデータ型
ダブルタイプ。
例
3,600ナノ秒をマイクロ秒単位の時間間隔に変換します。
クエリ文
* | SELECT to_microseconds('3600ns')
クエリと分析結果
to_ms関数
to_ms関数は、時間間隔をミリ秒単位の時間間隔に変換します。
構文
to_milliseconds(x)
パラメーター
パラメーター | 説明 |
x | 時間間隔。 このパラメーターの値はvarchar型です。 |
戻り値のデータ型
ダブルタイプ。
例
1.2秒をミリ秒単位の時間間隔に変換します。
クエリ文
* | SELECT to_milliseconds('1.2s')
クエリと分析結果
to_minutes関数
to_minutes関数は、時間間隔を分単位の時間間隔に変換します。
構文
to_minutes(x)
パラメーター
パラメーター | 説明 |
x | 時間間隔。 このパラメーターの値はvarchar型です。 |
戻り値のデータ型
ダブルタイプ。
例
1.2時間を分単位の時間間隔に変換します。
クエリ文
* | SELECT to_minutes('1.2h')
クエリと分析結果
to_most_succinct_time_unit関数
to_most_succinct_time_unit関数は、現在の単位から最適な単位に時間間隔を変換します。 システムは自動的に最適な単位を決定し、最適な単位で時間間隔を返します。
構文
to_most_succinct_time_unit(x)
パラメーター
パラメーター | 説明 |
x | 時間間隔。 このパラメーターの値はvarchar型です。 |
戻り値のデータ型
varcharタイプ。
例
1,340ミリ秒を秒単位の時間間隔に変換します。
クエリ文
* | SELECT to_most_succinct_time_unit('1340ms')
クエリと分析結果
to_nasns関数
to_nasns関数は、時間間隔をナノ秒単位の時間間隔に変換します。
構文
to_nanoseconds(x)
パラメーター
パラメーター | 説明 |
x | 時間間隔。 このパラメーターの値はvarchar型です。 |
戻り値のデータ型
ダブルタイプ。
例
125ミリ秒をナノ秒単位の時間間隔に変換します。
クエリ文
* | SELECT to_nanoseconds('125ms')
クエリと分析結果
to_seconds関数
to_seconds関数は、時間間隔を秒単位の時間間隔に変換します。
構文
to_seconds(x)
パラメーター
パラメーター | 説明 |
x | 時間間隔。 このパラメーターの値はvarchar型です。 |
戻り値のデータ型
ダブルタイプ。
例
1,340ミリ秒を秒単位の時間間隔に変換します。
クエリ文
* | SELECT to_seconds('1340ms')
クエリと分析結果