我有一个存储过程,需要将十六进制数转换为十进制数.我已经阅读了UNHEX()函数的文档,但是它返回了一个二进制值.我想要做的是这样的事情:
CREATE PROCEDURE foo( hex_val VARCHAR(10) )
BEGIN
DECLARE dec_val INTEGER;
SET dec_val = UNHEX( hex_val );
-- Do something with the decimal value
select dec_val;
END
Run Code Online (Sandbox Code Playgroud)
我错过了什么?如何将UNHEX()'d值转换为无符号整数?
Gre*_*reg 23
您可以使用该CONV()功能在基数之间进行转换.
SET dec_val = CONV(hex_val, 16, 10);
Run Code Online (Sandbox Code Playgroud)
conv(hex_val, 16, 10)
Run Code Online (Sandbox Code Playgroud)
将一些基数16转换为基数10. UNHEX函数完全不同,它将十六进制数字对转换为字符.
| 归档时间: |
|
| 查看次数: |
18295 次 |
| 最近记录: |