MySQL
        では、X'、val'x'、または
        val'0x
        形式を使って記述された 16
        進値をサポートしています。この場合、valval
        には 16 進数字
        (0..9、A..F)
        を指定します。16
        進数字の大文字と小文字は関係ありません。X'
        または
        val'x'
        形式で値を記述する場合、val'val
        には偶数の桁を入れる必要があります。0x
        構文を使用して値を記述する場合、奇数の桁が含まれる値は、先頭に追加の
        val
        0
        が付いているものとして扱われます。たとえば、0x0a
        と 0xaaa
        は、0x0a と
        0x0aaa
        として解釈されます。
      
数値のコンテキストでは、16 進値は整数 (64 ビット精度) のように動作します。文字列のコンテキストでは、16 進値はバイナリ列のように動作します。この場合、16 進数の各ペアが 1 文字に変換されます。
mysql>SELECT X'4D7953514C';-> 'MySQL' mysql>SELECT 0x0a+0;-> 10 mysql>SELECT 0x5061756c;-> 'Paul'
        16
        進値のデフォルトのデータ型は文字列です。16
        進値の文字列が確実に数値として扱われるようにするには、その文字列に対して
        CAST(... AS
        UNSIGNED) を使用します。
      
mysql> SELECT 0x41, CAST(0x41 AS UNSIGNED);
        -> 'A', 65
        X'
        構文は標準 SQL
        に基づいています。hexstring'0x
        構文は ODBC に基づいています。16
        進文字列は、BLOB
        カラムの値を提供する目的で、ODBC
        によって使用されることがよくあります。
      
        文字列または数値を 16
        進形式の文字列に変換するには、HEX()
        関数を使用できます。
      
mysql>SELECT HEX('cat');-> '636174' mysql>SELECT 0x636174;-> 'cat'

