Tengo un procedimiento almacenado que necesita convertir números hexadecimales a su equivalente decimal. He leído la documentación para la función UNHEX(), pero está devolviendo un valor binario. Lo que quiero hacer es algo como esto:Trabajando con números hexadecimales en MySQL
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
¿Qué me falta? ¿Cómo puedo convertir el valor de UNHEX() 'd en un entero sin signo?
Tenga en cuenta que esto devolverá el decimal como * cadena *. Si uno quiere obtener el decimal como un entero, use: elenco (conv (hex_val, 16, 10) como unsigned) – kien