MySQL UNHEX() 函数使用指南
MySQL UNHEX()
函数将代表十六进制数值的字符串转换为字节,并返回对应的二进制字符串。
UNHEX()
函数的处理过程为从十六进制数值的字符串参数中每两位转换为字节,并将所有的字节组合起来作为二进制字符串返回。
UNHEX()
函数是 HEX()
函数的逆向操作。
UNHEX()
语法
这里是 MySQL UNHEX()
函数的语法:
UNHEX(string)
参数
string
- 必需的。十六进制数值字符串。字符串中只允许出现十六进制允许的符号:
0...9
,A...F
,a...f
。
返回值
UNHEX()
函数返回一个二进制字符串。
- 如果参数
string
不是合法的十六进制数值,UNHEX()
函数将返回NULL
。 - 如果参数
number
为NULL
,UNHEX()
函数将返回NULL
。
由于 UNHEX()
函数返回的是二进制字符串,因此在 mysql 客户端显示的结果可能是十六进制内容。请在登陆时使用 --binary-as-hex=false
以禁用将二进制内容显示为十六进制。
UNHEX()
示例
SELECT
HEX('Hello'),
UNHEX(HEX('Hello')),
UNHEX('Invalid'),
UNHEX(NULL)\G
*************************** 1. row ***************************
HEX('Hello'): 48656C6C6F
UNHEX(HEX('Hello')): Hello
UNHEX('Invalid'): NULL
UNHEX(NULL): NULL
如果我们没有禁用 --binary-as-hex
, 则输出为:
*************************** 1. row ***************************
HEX('Hello'): 48656C6C6F
UNHEX(HEX('Hello')): 0x48656C6C6F
UNHEX('Invalid'): NULL
UNHEX(NULL): NULL