Del*_*els 16 mysql sql binary hex
目前我搜索MySQL中的一个函数来进行十六进制字符串到二进制表示之间的转换,例如:
0000 -> 0000000000000000
00AA -> 0000000010101010
FFFF -> 1111111111111111
Run Code Online (Sandbox Code Playgroud)
我已经尝试过了
UNHEX('00AA')
CAST('00AA' AS BINARY)
CONVERT('00AA', BINARY)
Run Code Online (Sandbox Code Playgroud)
但没有得到我想要的结果.
ype*_*eᵀᴹ 23
使用CONV()
功能:
CONV(string, 16, 2)
Run Code Online (Sandbox Code Playgroud)
根据输入有长度:
LPAD(CONV(string, 16, 2), LENGTH(string)*4, '0')
Run Code Online (Sandbox Code Playgroud)
由于CONV()
使用64位精度,您不能转换超过64位,因此您也可以使用它:
LPAD(CONV(string, 16, 2), 64, '0')
Run Code Online (Sandbox Code Playgroud)
你应该检查一下,LENGTH(string) <= 16
否则你可能会得到错误的结果.
pic*_*e 涅 13
UNHEX('hex string')
Run Code Online (Sandbox Code Playgroud)
将传递给函数的字符串中的每对字符解释为两个十六进制字符,并尝试将其转换为二进制数字(mysql中的二进制格式).这样,您可以将字符串转换为二进制.但是,这不会将内容显示为二进制数字字符串.相反,结果字符串中的每个2个字节都转换为特定的字符编码(例如utf8).
归档时间: |
|
查看次数: |
24444 次 |
最近记录: |