hex関数

広告

hex関数はBLOB型の値を16進数表記するために使用します。書式は次の通りです。

hex(BLOB型の値)

引数に指定した値はBLOB型の値として処理され、BLOB型の値を16進数表記に変換した結果を返します。

BLOB型の値はバイナリデータです。例えばバイナリデータの「6D」という値を表示しようとすると、文字コード「6D」に対応する文字の'm'という文字を画面に表示してしまいます。hex関数を使うとバイナリデータの「6D」を'6D'という文字列に変換して返してくれます。

具体的には次のように使用します。

select hex(randomblob(2));

このSELECT文ではrandomblob関数によって生成されたBLOB型の値を16進数表記にした結果を取得します。(randomblob関数については「randomblob関数」をご覧下さい)。

サンプル

では実際に試してみます。

select hex(randomblob(2));

p19-1

何回か同じSELECT文を実行し、BLOB型の値を16進数表記にした結果を取得しました。

また引数に指定した値をBLOB型の値として処理するため、例えば文字列を指定すると文字列の文字に対応した文字コードを16進表記で取得できます。

select hex('Aa');
select hex('ABC');

p19-2

( Written by Tatsuo Ikura )