- カテゴリ:
TO_BINARY¶
入力式をバイナリ値に変換します。 NULL 入力の場合、出力は NULLです。
こちらもご参照ください:
構文¶
TO_BINARY( <string_expr> [, '<format>'] )
TO_BINARY( <variant_expr> )
戻り値¶
返される型は BINARYです。
引数¶
必須:
string_expr
文字列式です。
オプション:
format
変換用のバイナリ形式:HEX、 BASE64、または UTF-8( Binary Input and Output を参照)。デフォルトは、 BINARY_INPUT_FORMAT セッションパラメーターの値です。このパラメーターが設定されていない場合、デフォルトは HEXです。
戻り値¶
BINARY型の値を返します。
例¶
これらの例は、 TO_BINARY
が呼び出されたときの出力を示しています。
この例は、 VARCHAR
を BINARY
に変換してから元の形式(VARCHAR
)に戻す方法を示しています。
テーブルを作成して入力します。
CREATE TABLE binary_test (v VARCHAR, b BINARY); INSERT INTO binary_test(v) VALUES ('SNOW');
VARCHAR
をBINARY
に変換します。UPDATE binary_test SET b = TO_BINARY(HEX_ENCODE(v), 'HEX');クエリを実行し、出力を表示します。
SELECT v, HEX_DECODE_STRING(TO_VARCHAR(b, 'HEX')) FROM binary_test; +------+-----------------------------------------+ | V | HEX_DECODE_STRING(TO_VARCHAR(B, 'HEX')) | |------+-----------------------------------------| | SNOW | SNOW | +------+-----------------------------------------+
この例は、 UTF-8文字の文字列を BINARY
に変換する方法を示しています。デフォルトでは、 SNOWSQL は BINARY
値を16進数の文字列として表示します。 UTF-8および内部 BINARY
形式ではありません。
SELECT TO_BINARY('SNOW', 'utf-8'); +----------------------------+ | TO_BINARY('SNOW', 'UTF-8') | |----------------------------| | 534E4F57 | +----------------------------+
この例は、出力が16進数を含む文字列であることがより明確になるように、出力を明示的に16進数に変換することを除いて、前の例と同じです。
SELECT TO_VARCHAR(TO_BINARY('SNOW', 'utf-8'), 'HEX'); +-----------------------------------------------+ | TO_VARCHAR(TO_BINARY('SNOW', 'UTF-8'), 'HEX') | |-----------------------------------------------| | 534E4F57 | +-----------------------------------------------+