AnalyticDB for MySQLは、次の可変長バイナリ関数をサポートしています。
AES_DECRYPT: AESアルゴリズムを使用してデータを復号化します。
AES_DECRYPT_MY: AESアルゴリズムを使用してデータを復号します。
AES_ENCRYPT: AESアルゴリズムを使用してデータを暗号化します。
AES_ENCRYPT_MY: AESアルゴリズムを使用してデータを暗号化します。
CHAR_LENGTH: 文字列の長さを返します。
COMPRESS: 文字列を圧縮し、結果をバイナリ文字列として返します。
CRC32: 引数の巡回冗長検査 (CRC) コードを返します。
ENCRYPT: 文字列を暗号化します。
FROM_BASE64: Base64-encoded文字列をデコードし、結果を返します。
GUNZIP: GZIP形式に基づいてバイナリ文字列を解凍し、バイナリ文字列の結果を返します。
GZIP: GZIP形式に基づいてバイナリ文字列を圧縮し、その結果をバイナリ文字列として返します。
HEX: 文字列または数値を16進文字列に変換し、結果を返します。
LEFT: 文字列の左端のy文字を返します。
LENGTH: 引数の長さをバイト単位で返します。
LOWER: 引数を小文字で返します。
LPAD: 別の文字列で左パディングされた文字列を返します。
LTRIM: 文字列の先頭のスペースを削除します。
MD5: 引数のMD5ハッシュ値を計算します。
ORD: 文字列がマルチバイト文字の場合、文字列の左端の文字のコードを返します。
REPEAT: 指定した回数繰り返す文字列を返します。
REVERSE: 文字列の文字を反転します。
RIGHT: 文字列の右端のy文字を返します。
RPAD: 別の文字列で右パディングされた文字列を返します。
RTRIM: 文字列の末尾のスペースを削除します。
SHA1: 文字列のSHA-1チェックサムを計算します。
SHA2: 文字列のSHA-2チェックサムを計算します。
SUBSTR: 指定された部分文字列を返します。
TO_BASE64: Base64-encoded文字列を返します。
TRIM: 文字列の先頭と末尾のスペースを削除します。
UNCOMPRESS:
COMPRESS()
関数によって圧縮された文字列を解凍します。UNCOMPRESSED_LENGTH: 圧縮前の文字列の長さを返します。
UNHEX: 引数の各文字ペアを16進値に解釈し、16進値を数値で表されるバイトに変換してから、その値をバイナリ文字列として返します。
UNZIP: ZIP形式に基づいてバイナリ文字列を解凍し、バイナリ文字列の結果を返します。
UPPER: 引数を大文字で返します。
ZIP: ZIP形式に基づいてバイナリ文字列を圧縮し、結果をバイナリ文字列として返します。
使用上の注意
クライアントによって生成される解析結果が異なるため、一部の関数の戻り値が異なる場合があります。 たとえば、 "China" はクライアントによって "0x4368696E61" に解析されます。 このトピックのすべての例では、データ管理 (DMS) から生成される戻り値が使用されます。
AES_DECRYPT
AES_DECRYPT(VARBINARY X、VARCHAR Y)
説明: この関数は、AESアルゴリズムを使用して、
Y
をキーとしてX
を復号化します。戻り値のデータ型: VARBINARY。
例:
SELECT HEX(AES_DECRYPT(AES_ENCRYPT(CAST('China' AS VARBINARY) 、'0123')) 、'0123');
次の情報が返されます。
+ ----------------------------------------------------------------------------- + | HEX(AES_DECRYPT(AES_ENCRYPT(CAST('China a' AS VARBINARY)) 、'0123 ')) | + ----------------------------------------------------------------------------- + | 4368696E61 | + ----------------------------------------------------------------------------- +
AES_DECRYPT_MY
AES_DECRYPT_MY機能はMySQLと互換性があります。 AnalyticDB for MySQLでは、MySQLで暗号化されたデータを復号できます。
V3.1.10.0以降のクラスターのみがAES_DECRYPT_MYをサポートしています。
クラスターのマイナーバージョンをクエリする方法については、AnalyticDB for MySQLクラスターのバージョンを照会するにはどうすればよいですか? クラスターのマイナーバージョンを更新するには、テクニカルサポートにお問い合わせください。
AES_DECRYPT_MY(VARBINARY X、VARCHAR Y)
説明: この関数は、AESアルゴリズムを使用して、
Y
をキーとしてX
を復号化します。戻り値のデータ型: VARBINARY。
例:
SELECT CAST(AES_DECRYPT_MY(UNHEX('CF3AB34E18CD73CE37D46AD2588BA258') 、'key_string ') AS CHAR);
次の情報が返されます。
+ --------------------------------------------------------------------------------------- + | CAST(AES_DECRYPT_MY(UNHEX('CF3AB34E18CD73CE37D46AD2588BA258') 、'key_string') AS CHAR) | + --------------------------------------------------------------------------------------- + | 中国 | + --------------------------------------------------------------------------------------- +
AES_ENCRYPT
AES_ENCRYPT(VARBINARY X、VARCHAR Y)
説明: この関数は、AESアルゴリズムを使用して
Y
をキーとしてX
を暗号化します。戻り値のデータ型: VARBINARY。
例:
SELECT HEX(AES_ENCRYPT(CAST('China a' AS VARBINARY)) 、'0123');
次の情報が返されます。
+ ------------------------------------------------------- + | HEX(AES_ENCRYPT(CAST('China a' AS VARBINARY)) 、'0123') | + ------------------------------------------------------- + | 6C5CB5E59E3EA58E58CFBE3C76BFBECA | + ------------------------------------------------------- +
AES_ENCRYPT_MY
AES_ENCRYPT_MY機能はMySQLと互換性があります。 MySQLでは、AnalyticDB for MySQLで暗号化されたデータを復号できます。
V3.1.10.0以降のクラスターのみがAES_ENCRYPT_MYをサポートしています。
クラスターのマイナーバージョンをクエリする方法については、AnalyticDB for MySQLクラスターのバージョンを照会するにはどうすればよいですか? クラスターのマイナーバージョンを更新するには、テクニカルサポートにお問い合わせください。
AES_ENCRYPT_MY(VARBINARY X, VARCHAR Y)
説明: この関数は、AESアルゴリズムを使用して
Y
をキーとしてX
を暗号化します。戻り値のデータ型: VARBINARY。
例:
SELECT HEX(AES_ENCRYPT_MY('China', 'key_string '));
次の情報が返されます。
+ ------------------------------------------------------- + | HEX(AES_ENCRYPT_MY('China', 'key_string')) | + ------------------------------------------------------- + | CF3AB34E18CD73CE37D46AD2588BA258 | + ------------------------------------------------------- +
CHAR_LENGTH
CHAR_LENGTH(VARBINARY X)
説明: この関数は、
X
文字列の長さを文字単位で返します。戻り値のデータ型: LONG。
例:
SELECT CHAR_LENGTH(CAST('ABC 'AS VARBINARY));
次の情報が返されます。
+ --------------------------------------- + | CHAR_LENGTH(CAST('ABC 'AS VARBINARY)) | + --------------------------------------- + | 3 | + --------------------------------------- +
圧縮
圧縮 (VARBINARY X)
説明: この関数は
X
文字列を圧縮し、結果をバイナリ文字列として返します。戻り値のデータ型: VARBINARY。
例:
SELECT HEX(COMPRESS(CAST('China a' AS VARBINARY)));
次の情報が返されます。
+ -------------------------------------------- + | HEX(COMPRESS(CAST('China' AS VARBINARY))) | + -------------------------------------------- + | 05000000789C73CEC8CC4B0400056C01E4 | + -------------------------------------------- +
CRC32
CRC32(VARBINARY X)
説明: この関数は
X
のCRCコードを返します。戻り値のデータ型: LONG。
例:
SELECT CRC32 (キャスト (「中国」としてのVARBINARY));
次の情報が返されます。
+ ------------------------------------ + | CRC32(CAST ('中国 'AS VARBINARY)) | + ------------------------------------ + | 2704207136 | + ------------------------------------ +
ENCRYPT
ENCRYPT(VARBINARY X、VARCHAR Y)
説明: この関数は、
X
引数をY
でsalt値として暗号化します。戻り値のデータ型: BLOB。
例:
SELECT ENCRYPT('ABDABC123' 、'KEY');
次の情報が返されます。
+ ----------------------------- + | ENCRYPT('ABDABC123' 、'KEY') | + ----------------------------- + | kezazmcIo.aCw | + ----------------------------- +
FROM_BASE64
FROM_BASE64(VARBINARY X)
説明: この関数は、Base64でエンコードされた
X
文字列をデコードし、結果を返します。戻り値のデータ型: BLOB。
例:
SELECT FROM_BASE64(TO_BASE64(CAST('abc' AS VARBINARY)));
次の情報が返されます。
+ -------------------------------------------------- + | FROM_BASE64(TO_BASE64(CAST('abc' AS VARBINARY))) | + -------------------------------------------------- + | abc | + -------------------------------------------------- +
GUNZIP
V3.1.9.3以降のクラスターのみがGUNZIPをサポートしています。
クラスターのマイナーバージョンをクエリする方法については、AnalyticDB for MySQLクラスターのバージョンを照会するにはどうすればよいですか? クラスターのマイナーバージョンを更新するには、テクニカルサポートにお問い合わせください。
GUNZIP(VARBINARY X)
説明: この関数は、GZIP形式に基づいて
X
バイナリ文字列を解凍し、バイナリ文字列の結果を返します。戻り値のデータ型: VARBINARY。
例:
SELECT GUNZIP(GZIP(CAST('China a' AS VARBINARY)));
次の情報が返されます。
+ -------------------------------------------- + | GUNZIP(GZIP(CAST('China a' AS VARBINARY))) | + -------------------------------------------- + | 中国 | + -------------------------------------------- +
GZIP
V3.1.9.3以降のクラスターのみがGZIPをサポートしています。
クラスターのマイナーバージョンをクエリする方法については、AnalyticDB for MySQLクラスターのバージョンを照会するにはどうすればよいですか? クラスターのマイナーバージョンを更新するには、テクニカルサポートにお問い合わせください。
GZIP(VARBINARY X)
説明: この関数は、GZIP形式に基づいて
X
バイナリ文字列を圧縮し、その結果をバイナリ文字列として返します。戻り値のデータ型: VARBINARY。
例:
SELECT HEX(GZIP(CAST('China a' AS VARBINARY)));
次の情報が返されます。
+ ------------------------------------------------------ + | HEX(GZIP(CAST('China a' AS VARBINARY))) | + ------------------------------------------------------ + | 1F8B080000000000000073CEC8CC4B040020ED2EA105000000 | + ------------------------------------------------------ +
HEX
HEX(VARBINARY X)
説明: この関数は、
X
文字列または数値を16進文字列に変換します。戻り値のデータ型: VARCHAR。
例:
SELECT HEX(CAST (「中国」としてのVARBINARY));
次の情報が返されます。
+ ---------------------------------- + | HEX(CAST('China a' AS VARBINARY)) | + ---------------------------------- + | 4368696E61 | + ---------------------------------- +
左
左(VARBINARY X、BIGINT Y)
左 (VARBINARY X、ダブルY)
説明: この関数は、
X
文字列の左端のY
文字を返します。戻り値のデータ型: BLOB。
例:
SELECT LEFT(CAST (「中国」AS VARBINARY) 、1000);
次の情報が返されます。
+ ----------------------------------------- + | 左 (CAST('China a' AS VARBINARY) 、1000) | + ----------------------------------------- + | 中国 | + ----------------------------------------- +
LENGTH
長さ (VARBINARY X)
説明: この関数は、
X
引数の長さをバイト単位で返します。戻り値のデータ型: LONG。
例:
選択された長さ (CAST (VARBINARYとしての 'ABC '));
次の情報が返されます。
+----------------------------------+ | 長さ (CAST('ABC 'AS VARBINARY)) | +----------------------------------+ | 3 | +----------------------------------+
LOWER
低い (VARBINARY X)
説明: この関数は、
X
引数を小文字で返します。戻り値のデータ型: VARBINARY。
例:
SELECT LOWER(CAST('ABC 'AS VARBINARY));
次の情報が返されます。
+ --------------------------------- + | LOWER(CAST('ABC 'AS VARBINARY)) | + --------------------------------- + | abc | + --------------------------------- +
LPAD
LPAD(VARBINARY X、BIGINT Y、VARCHAR Z)
LPAD(VARBINARY X、ダブルY、VARCHAR Z)
説明: この関数は
X
文字列を返し、左にZ
文字列をY
文字の長さにパディングします。X
がY
より長い場合、戻り値はY
文字に短縮されます。戻り値のデータ型: VARBINARY。
例:
SELECT HEX(LPAD(CAST('China a' AS VARBINARY)) 、7、'-');
次の情報が返されます。
+ ------------------------------------------------ + | HEX(LPAD(CAST('China a' AS VARBINARY)), 7, '-') | + ------------------------------------------------ + | 2D2D4368696E61 | + ------------------------------------------------ +
LTRIM
LTRIM(VARBINARY X)
説明: この関数は、
X
文字列の先頭のスペースを削除します。戻り値のデータ型: BLOB。
例:
SELECT LTRIM(CAST ('China 'AS VARBINARY));
次の情報が返されます。
+ ---------------------------------------- + | LTRIM (キャスト ('China 'AS VARBINARY)) | + ---------------------------------------- + | 中国 | + ---------------------------------------- +
MD5
MD5(VARBINARY X)
説明: この関数は、
X
引数のMD5ハッシュ値を返します。戻り値のデータ型: VARCHAR。
例:
SELECT MD5(CAST('China a' AS VARBINARY));
次の情報が返されます。
+ ---------------------------------- + | MD5(CAST ('中国 'AS VARBINARY)) | + ---------------------------------- + | ae54a5c026f31ada088992587d92cb3a | + ---------------------------------- +
ORD
ORD(VARBINARY X)
説明: この関数は、文字がマルチバイト文字の場合、
X
文字列の左端の文字のコードを返します。戻り値のデータ型: LONG。
例:
SELECT ORD(CAST (VARBINARYとしての「中国」));
次の情報が返されます。
+ ---------------------------------- + | ORD(CAST('China a' AS VARBINARY)) | + ---------------------------------- + | 67 | + ---------------------------------- +
REPEAT
繰り返し (VARBINARY X、DOUBLE Y)
繰り返し (VARBINARY X、BIGINT Y)
説明: この関数は、
Y
回繰り返すX
文字列を返します。戻り値のデータ型: VARBINARY。
例:
SELECT HEX (繰り返し (キャスト (「中国」AS VARBINARY) 、1));
次の情報が返されます。
+ --------------------------------------------- + | HEX(REPEAT(CAST('China' AS VARBINARY) 、1)) | + --------------------------------------------- + | 4368696E61 | + --------------------------------------------- +
REVERSE
逆 (VARBINARY X)
説明: この関数は、
X
文字列の文字を反転します。戻り値のデータ型: VARBINARY。
例:
SELECT HEX (逆 (CAST('China a' AS VARBINARY)));
次の情報が返されます。
+ ------------------------------------------- + | HEX (逆 (CAST('China' AS VARBINARY))) | + ------------------------------------------- + | 616E696843 | + ------------------------------------------- +
右
RIGHT(VARBINARY X、BIGINT Y)
右 (VARBINARY X、ダブルY)
説明: この関数は、
X
文字列の右端のY
文字を返します。戻り値のデータ型: VARBINARY。
例:
SELECT HEX(RIGHT(CAST('China' AS VARBINARY)) 、1);
次の情報が返されます。
+ -------------------------------------------- + | HEX(RIGHT(CAST('China' AS VARBINARY) 、1)) | + -------------------------------------------- + | 61 | + -------------------------------------------- +
RPAD
RPAD(VARBINARY X、BIGINT Y、VARCHAR Z)
RPAD(VARBINARY X、ダブルY、VARCHAR Z)
説明: この関数は
X
文字列を返し、Z
文字列でY
文字の長さに右パディングします。X
がY
より長い場合、戻り値はY
文字に短縮されます。戻り値のデータ型: VARBINARY。
例:
SELECT HEX(RPAD(CAST('China a' AS VARBINARY)) 、4.7、'x');
次の情報が返されます。
+ -------------------------------------------------- + | HEX(RPAD(CAST('China a' AS VARBINARY)) 、4.7、'x') | + -------------------------------------------------- + | 4368696E61 | + -------------------------------------------------- +
RTRIM
RTRIM(VARBINARY X)
説明: この関数は、
X
文字列の末尾のスペースを削除します。戻り値のデータ型: BLOB。
例:
SELECT RTRIM(CAST ('China 'AS VARBINARY));
次の情報が返されます。
+ ---------------------------------------- + | RTRIM (キャスト ('China 'AS VARBINARY)) | + ---------------------------------------- + | 中国 | + ---------------------------------------- +
SHA1
SHA1(VARBINARY X)
説明: この関数は、
X
文字列のSHA-1チェックサムを計算します。戻り値のデータ型: VARCHAR。
例:
SELECT SHA1 (キャスト (「中国」としてのVARBINARY));
次の情報が返されます。
+ ------------------------------------------ + | SHA1(CAST('China' AS VARBINARY)) | + ------------------------------------------ + | d2eaf2aa1512d6596e0a5bae633537c6b8e779a3 | + ------------------------------------------ +
SHA2
SHA2(VARBINARY X、INTEGER Y)
SHA2(VARBINARY X、VARCHAR Y)
説明: この関数は、
X
文字列のSHA-2チェックサムを返します。 SHA-224、SHA-256、SHA-384、またはSHA-512を使用することができます。X
はハッシュされる平文文字列です。Y
は、結果を表すのに必要なビットの長さであり、224、256、384、512、または0でなければならない。戻り値のデータ型: VARCHAR。
例:
SELECT SHA2 (キャスト (「中国」としてVARBINARY) 、256);
次の情報が返されます。
+ ------------------------------------------------------------------ + | SHA2(CAST (「中国」AS VARBINARY) 、256) | + ------------------------------------------------------------------ + | 10436829032f361a3de50048de41755140e581467bc1895e6c1a17f423e42d10 | + ------------------------------------------------------------------ +
SUBSTR
SUBSTR(VARBINARY X、BIGINT Y、DOUBLE Z)
SUBSTR(VARBINARY X、ダブルY、ダブルZ)
SUBSTR(VARBINARY X、BIGINT Y、BIGINT Z)
SUBSTR(VARBINARY X、ダブルY、BIGINT Z)
SUBSTR(VARBINARY X、ダブルY)
SUBSTR(VARBINARY X、BIGINT Y)
説明: この関数は、指定された部分文字列を返します。
戻り値のデータ型: VARBINARY。
例:
TO_BASE64
TO_BASE64(VARBINARY X)
説明: この関数は、Base64形式でエンコードされた
X
文字列を返します。戻り値のデータ型: VARCHAR。
例:
SELECT TO_BASE64(CAST('China' AS VARBINARY));
次の情報が返されます。
+ ---------------------------------------- + | TO_BASE64(CAST('China a' AS VARBINARY)) | + ---------------------------------------- + | Q2hpbmE= | + ---------------------------------------- +
TRIM
トリム (VARBINARY X)
説明: この関数は、
X
文字列の先頭と末尾のスペースを削除します。戻り値のデータ型: BLOB。
例:
セレクトトリム (キャスト ('China 'AS VARBINARY));
次の情報が返されます。
+ --------------------------------------- + | トリム (キャスト ('中国' としてVARBINARY)) | + --------------------------------------- + | 中国 | + --------------------------------------- +
非圧縮
UNCOMPRESS(VARBINARY X)
説明: この関数は、
COMPRESS()
関数によって圧縮されたX
文字列を解凍します。戻り値のデータ型: BLOB。
例:
SELECT UNCOMPRESS(COMPRESS(CAST('China a' AS VARBINARY)));
次の情報が返されます。
+ --------------------------------------------------- + | UNCOMPRESS(COMPRESS(CAST('China a' AS VARBINARY))) | + --------------------------------------------------- + | 中国 | + --------------------------------------------------- +
UNCOMPRESSED_LENGTH
UNCOMPRESSED_LENGTH(VARBINARY X)
説明: この関数は、圧縮前の
X
文字列の長さを返します。戻り値のデータ型: LONG。
例:
SELECT UNCOMPRESSED_LENGTH(COMPRESS(CAST('China a' AS VARBINARY)));
次の情報が返されます。
+ ------------------------------------------------------------ + | UNCOMPRESSED_LENGTH(COMPRESS(CAST('China a' AS VARBINARY))) | + ------------------------------------------------------------ + | 5 | + ------------------------------------------------------------ +
UNHEX
UNHEX(VARBINARY X)
説明: この関数は、
X
引数の各文字ペアを16進値として解釈し、16進値を数値で表されるバイトに変換してから、値をバイナリ文字列として返します。戻り値のデータ型: VARBINARY。
例:
SELECT UNHEX (キャスト (「中国」としてのVARBINARY));
次の情報が返されます。
+ ------------------------------------ + | UNHEX(CAST('China a' AS VARBINARY)) | + ------------------------------------ + | NULL | + ------------------------------------ +
UNZIP
V3.1.9.3以降のクラスターのみがUNZIPをサポートしています。
クラスターのマイナーバージョンをクエリする方法については、AnalyticDB for MySQLクラスターのバージョンを照会するにはどうすればよいですか? クラスターのマイナーバージョンを更新するには、テクニカルサポートにお問い合わせください。
UNZIP(VARBINARY X)
説明: この関数は、ZIP形式に基づいて
X
バイナリ文字列を解凍し、バイナリ文字列の結果を返します。戻り値のデータ型: VARBINARY。
例:
SELECT UNZIP(ZIP(CAST('China a' AS VARBINARY)));
次の情報が返されます。
+ --------------------------------------- + | UNZIP(ZIP(CAST('China a' AS VARBINARY)))| + --------------------------------------- + | 中国 | + --------------------------------------- +
UPPER
アッパー (VARBINARY X)
説明: この関数は、
X
引数を大文字で返します。戻り値のデータ型: VARBINARY。
例:
SELECT UPPER(CAST('abc' AS VARBINARY));
次の情報が返されます。
+ --------------------------------- + | アッパー (CAST('abc' AS VARBINARY)) | + --------------------------------- + | ABC | + --------------------------------- +
ZIP
V3.1.9.3以降のクラスターのみがZIPをサポートしています。
クラスターのマイナーバージョンをクエリする方法については、AnalyticDB for MySQLクラスターのバージョンを照会するにはどうすればよいですか? クラスターのマイナーバージョンを更新するには、テクニカルサポートにお問い合わせください。
ZIP(VARBINARY X)
説明: この関数は、ZIP形式に基づいて
X
バイナリ文字列を圧縮し、結果をバイナリ文字列として返します。戻り値のデータ型: VARBINARY。
例:
SELECT UNZIP(ZIP(CAST('China a' AS VARBINARY)));
次の情報が返されます。
+ --------------------------------------- + | UNZIP(ZIP(CAST('China a' AS VARBINARY)))| + --------------------------------------- + | 中国 | + --------------------------------------- +