Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Working with hex numbers in MySQL

Tags:

mysql

hex

I have a stored procedure that needs to convert hexadecimal numbers to their decimal equivalent. I've read the documentation for the UNHEX() function, but it is returning a binary value. What I'm wanting to do is something like this:

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

What am I missing? How can I convert the UNHEX()'d value to a unsigned integer?

like image 649
m0j0 Avatar asked Dec 08 '08 20:12

m0j0


1 Answers

conv(hex_val, 16, 10)

Will convert a number of base 16 to base 10. The UNHEX function does something completely different, it converts pairs of hex digits to characters.

like image 161
Robert Gamble Avatar answered Oct 05 '22 13:10

Robert Gamble