如何将十六进制文本转换为MySQL中的常规可读(varchar)字符串?
我见过一些函数将十六进制转换为数字,但没有一个函数将十六进制转换为字符串。
答案是:
select CAST(unhex('hexstringhere') AS CHAR(100))
通过反复试验得出结论
使用UNHEX函数
对于字符串参数str, UNHEX(str)将参数中的每对字符解释为十六进制数,并将其转换为由该数字表示的字节。返回值是一个二进制字符串。
mysql> SELECT UNHEX('4D7953514C');
-> 'MySQL'
mysql> SELECT 0x4D7953514C;
-> 'MySQL'
mysql> SELECT UNHEX(HEX('string'));
-> 'string'
mysql> SELECT HEX(UNHEX('1267'));
-> '1267'
字体:http://dev.mysql.com/doc/refman/5.1/en/string-functions.html function_unhex