在MySQL中取消对值或列的解压缩
我应该在MySQL中使用什么来取消Ex以实现十进制值28的结果 我的最终目标是执行OR操作,因此我尝试:在MySQL中取消对值或列的解压缩,mysql,Mysql,我应该在MySQL中使用什么来取消Ex以实现十进制值28的结果 我的最终目标是执行OR操作,因此我尝试: select hex(28) from dual; -- 1C select unhex(1C) from dual; -- Error 1054 : Unknown Column '1C' 如何实现上述声明?如下所述: MySQL支持使用X'val,X'val,或0xval格式编写的十六进制值,其中val包含十六进制数字(0..9,A..F)。数字的字母大小写无关紧要。对于使用X'val
select hex(28) from dual; -- 1C
select unhex(1C) from dual; -- Error 1054 : Unknown Column '1C'
如何实现上述声明?如下所述:
MySQL支持使用X'val
,X'val,或0xval
格式编写的十六进制值,其中val
包含十六进制数字(0..9
,A..F)
。数字的字母大小写无关紧要。对于使用X'val
或X'val
格式写入的值,val
必须包含偶数位数。对于使用0xval
语法编写的值,包含奇数位数的值被视为具有额外的前导0
。例如,0x0a
和0xaaa
被解释为0x0a
和0x0aaa
在数字上下文中,十六进制值的行为类似于整数(64位精度)。在字符串上下文中,它们的行为类似于二进制字符串,其中每对十六进制数字都转换为一个字符:
因此:
请参阅。您是否阅读了手册中标题为“我尝试了选择取消链接('1C')”的部分;同时,它给出了一个空白结果。仅选择conv('1C',16,10);似乎有用!那么你还没有读过我上面链接的手册部分?你不认为你应该吗?非常感谢你的帮助。有人能帮我从dual中选择b'(binary(unhex(1C)))| b'(binary(unhex(F))!我试过从dual中选择conv('F',16,2)| conv('1C',16,2);它不起作用。有办法执行此操作吗
select b'(binary(unhex(1C))' | b'(binary(unhex(F))' from dual; -- Error 1064
SELECT 0x1c | 0xf