このトピックでは、バイナリ関数の構文について説明します。 このトピックでは、関数の使用方法の例も示します。
次の表に、Simple Log Serviceでサポートされているバイナリ関数を示します。
分析ステートメントで文字列を使用する場合は、文字列を単一引用符 ('') で囲む必要があります。 囲まれていない文字列または二重引用符 ("") で囲まれている文字列は、フィールド名または列名を示します。 例えば、 'status' はステータスの文字列を示し、status または "status" はステータスログフィールドを示します。
varbinaryはバイナリ文字型で、varcharは可変長文字型です。
関数 | 構文 | 説明 | SQLでサポート | SPLでサポート |
from_base64( x) | Base64-encoded文字列を2進数にデコードします。 | √ | √ | |
from_base64url( x) | URL予約文字を使用して、Base64-encoded文字列をバイナリ数にデコードします。 | √ | × | |
from_big_endian_64( x) | ビッグエンディアンのバイナリ数をbigint値にデコードします。 | √ | × | |
from_hex( x) | 16進数を2進数にデコードします。 | √ | √ | |
長さ (x) | 2進数の長さを返します。 | √ | × | |
md5( x) | 2進数のMD5ハッシュ値を計算します。 | √ | √ | |
to_base64( x) | バイナリ数値をBase64文字列表現にエンコードします。 | √ | ||
to_base64url( x) | URL予約文字を使用して、バイナリ数値をBase64文字列表現にエンコードします。 | √ | × | |
to_hex( x) | バイナリ数値を16進数にエンコードします。 | √ | √ | |
to_big_endian_64( x) | bigint値をビッグエンディアンの2進数にエンコードします。 | √ | × | |
sha1( x) | 2進数のSHA-1ハッシュ値を計算します。 | √ | √ | |
sha256( x) | バイナリ数のSHA-256ハッシュ値を計算します。 | √ | √ | |
sha512( x) | バイナリ数のSHA-512ハッシュ値を計算します。 | √ | √ | |
xxhash64( x) | 2進数のxxhash64ハッシュ値を計算します。 | √ | √ |
from_base64関数
from_base64関数は、Base64-encoded文字列を2進数にデコードします。
構文
from_base64(x)
パラメーター
パラメーター | 説明 |
x | このパラメーターの値はバイナリ型です。 |
戻り値のデータ型
varbinary型。
varbinary型の戻り値には非表示の文字が含まれ、Base64-encoded形式で表示されます。
返された2進数が非表示文字の場合は、to_hex関数を使用して16進数にエンコードできます。
返された2進数が可視文字の場合は、from_utf8関数を使用して数値をUTF-8文字列にエンコードできます。
例
Base64-encoded文字列を2進数にデコードし、その2進数を16進数にエンコードします。
クエリ文
* | SELECT to_hex(from_base64('c2xz'))
クエリと分析結果
from_base64url関数
from_base64url関数は、URL予約文字を使用してBase64-encoded文字列をバイナリ数にデコードします。
構文
from_base64url(x)
パラメーター
パラメーター | 説明 |
x | このパラメーターの値はバイナリ型です。 |
戻り値のデータ型
varbinary型。
varbinary型の戻り値には非表示の文字が含まれ、Base64-encoded形式で表示されます。
返された2進数が非表示文字の場合は、to_hex関数を使用して16進数にエンコードできます。
返された2進数が可視文字の場合は、from_utf8関数を使用して数値をUTF-8文字列にエンコードできます。
例
URL予約文字を使用して、Base64-encoded文字列をバイナリ数にデコードします。
クエリ文
* | SELECT to_hex(from_base64url('c2xz'))
クエリと分析結果
from_big_endian_64関数
from_big_endian_64関数は、ビッグエンディアンの2進数をbigint値にデコードします。
構文
from_big_endian_64(x)
パラメーター
パラメーター | 説明 |
x | このパラメーターの値はバイナリ型です。 |
戻り値のデータ型
bigint型。
例
ビッグエンディアンのバイナリ数10をbigint値にデコードします。
クエリ文
* | SELECT from_big_endian_64(to_big_endian_64(10))
クエリと分析結果
from_hex関数
from_hex関数は、16進数を2進数にデコードします。
構文
from_hex(x)
パラメーター
パラメーター | 説明 |
x | このパラメーターの値はvarbinary型です。 |
戻り値のデータ型
varbinary型。
例
16進数D74Dを2進数にデコードする。
クエリ文
* | SELECT from_hex('D74D')
クエリと分析結果
長さ関数
length関数は、2進数の長さを返します。
構文
length(x)
パラメーター
パラメーター | 説明 |
x | このパラメーターの値はバイナリ型です。 |
戻り値のデータ型
bigint型。
例
regionフィールド値の長さを計算します。
クエリ文
* | SELECT length('00101000')
クエリと分析結果
md5関数
md5関数は、2進数のMD5ハッシュ値を計算します。
構文
md5(x)
パラメーター
パラメーター | 説明 |
x | このパラメーターの値はvarbinary型です。 |
戻り値のデータ型
varbinary型。
例
バイナリ数1101のMD5ハッシュ値を計算します。
クエリ文
* | SELECT MD5(from_base64('1101')) AS md5
クエリと分析結果
to_base64関数
to_base64関数は、バイナリ数値をBase64文字列表現にエンコードします。
構文
to_base64(x)
パラメーター
パラメーター | 説明 |
x | このパラメーターの値はバイナリ型です。 |
戻り値のデータ型
varcharタイプ。
例
バイナリ数10をBase64文字列表現にエンコードします。
クエリ文
* | SELECT to_base64(from_base64('10')) AS base64
クエリと分析結果
to_base64url関数
to_base64url関数は、URL予約文字を使用してバイナリ番号をBase64文字列表現にエンコードします。
構文
to_base64url(x)
パラメーター
パラメーター | 説明 |
x | このパラメーターの値はバイナリ型です。 |
戻り値のデータ型
varcharタイプ。
例
URL予約文字を使用して、バイナリ番号100をBase64文字列表現にエンコードします。
クエリ文
* | SELECT to_base64url(from_base64('100'))
クエリと分析結果
to_hex関数
to_hex関数は、バイナリ数値を16進数にエンコードします。
構文
to_hex(x)
パラメーター
パラメーター | 説明 |
x | このパラメーターの値はバイナリ型です。 |
戻り値のデータ型
varcharタイプ。
例
2進数100を16進数にエンコードします。
クエリ文
* | SELECT to_hex(from_base64('100'))
クエリと分析結果
to_big_endian_64関数
to_big_endian_64関数は、bigint値をビッグエンディアンの2進数にエンコードします。
構文
to_big_endian_64(x)
パラメーター
パラメーター | 説明 |
x | このパラメーターの値はbigint型です。 |
戻り値のデータ型
varbinary型。
例
bigint値0をビッグエンディアンの2進数にエンコードします。
クエリ文
* | SELECT to_big_endian_64(0)
クエリと分析結果
sha1関数
sha1関数は、2進数のSHA-1ハッシュ値を計算します。
構文
sha1(x)
パラメーター
パラメーター | 説明 |
x | このパラメーターの値はバイナリ型です。 |
戻り値のデータ型
varbinary型。
例
2進数1101のSHA-1ハッシュ値を計算します。
クエリ文
* | SELECT sha1(from_base64('1101')) AS sha1
クエリと分析結果
sha256関数
sha256関数は、2進数のSHA-256ハッシュ値を計算します。
構文
sha256(x)
パラメーター
パラメーター | 説明 |
x | このパラメーターの値はバイナリ型です。 |
戻り値のデータ型
varbinary型。
例
2進数1101のSHA-256ハッシュ値を計算する。
クエリ文
* | SELECT sha256(from_base64('1101')) AS sha256
クエリと分析結果
sha512関数
sha512関数は、2進数のSHA-512ハッシュ値を計算します。
構文
sha512(x)
パラメーター
パラメーター | 説明 |
x | このパラメーターの値はバイナリ型です。 |
戻り値のデータ型
varbinary型。
例
2進数1101のSHA-512ハッシュ値を計算する。
クエリ文
* | SELECT sha512(from_base64('1101')) AS sha512
クエリと分析結果
xxhash64関数
xxhash64関数は、2進数のxxhash64ハッシュ値を計算します。
構文
xxhash64(x)
パラメーター
パラメーター | 説明 |
x | このパラメーターの値はバイナリ型です。 |
戻り値のデータ型
varbinary型。
例
2進数10のxxhash64ハッシュ値を計算します。
クエリ文
* | SELECT xxhash64(from_base64('10'))
クエリと分析結果