首页 MySQL UNHEX() 函数

MySQL UNHEX() 函数

MySQL UNHEX() 函数将代表十六进制数值的字符串转换为字节,并返回对应的二进制字符串。

UNHEX() 函数的处理过程为从十六进制数值的字符串参数中每两位转换为字节,并将所有的字节组合起来作为二进制字符串返回。

UNHEX() 函数是 HEX() 函数的逆向操作。

UNHEX() 语法

这里是 MySQL UNHEX() 函数的语法:

UNHEX(string)

参数

string
必需的。十六进制数值字符串。字符串中只允许出现十六进制允许的符号: 0...9, A...F, a...f

返回值

UNHEX() 函数返回一个二进制字符串。

  • 如果参数 string 不是合法的十六进制数值,UNHEX() 函数将返回 NULL
  • 如果参数 numberNULLUNHEX() 函数将返回 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
特别声明:本站部分内容收集于互联网是出于更直观传递信息的目的。该内容版权归原作者所有,并不代表本站赞同其观点和对其真实性负责。如该内容涉及任何第三方合法权利,请及时与824310991@qq.com联系,我们会及时反馈并处理完毕。