MySQL では、16 進値をサポートしています。数値のコンテキストでは、16 進値は整数(64 ビット精度)のように動作します。文字列のコンテキストでは、16 進値はバイナリ文字列のように動作します。この場合、16 進数の各ペアが 1 文字に変換されます。
mysql>SELECT x'4D7953514C';
-> MySQL mysql>SELECT 0xa+0;
-> 10 mysql>SELECT 0x5061756c;
-> Paul
MySQL 4.1(および --new
オプションを使用した MySQL 4.0)では、16
進値のデフォルトのデータ型は文字列です。16
進値の文字列が確実に数値として扱われるようにするには、その文字列に対して
CAST( ... AS UNSIGNED)
を使用します。
x'hexstring'
構文(4.0
の新機能)は標準 SQL
に基づいており、0x
構文は ODBC
に基づいています。16
進文字列は、BLOB
カラムの値を提供する目的で、ODBC
によって使用されることがよくあります。
文字列または数値を 16
進形式の文字列に変換するには、HEX()
関数を使用できます。
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.