MySQL HEX() function

HEX() function

MySQL HEX() returns a string representation of a hexadecimal value of a decimal or string value specified as an argument.

If the argument is a string, each character in the argument is converted to two hexadecimal digits.

If the argument is decimal, the function returns a hexadecimal string representation of the argument and treated as a longlong (BIGINT) number.

This function is equivalent to CONV(N,10,16).

This function is useful in -

  • It allows us to convert a numeric or string value to its hexadecimal representation.
  • The HEX() function can be used in hashing or encoding operations, where a hexadecimal representation is required.
  • HEX() function can be used to compare hexadecimal representations of values.


HEX (N or S)


Name Description
N A number which is to be converted to hexadecimal.
S A string whose each character is to be converted to two hexadecimal digits.

MySQL Version: 8.0

Example: MySQL HEX() function

In the following MySQL statement, the argument 157 is a number, which is converted to a hexadecimal number. The output is 9D.




mysql> SELECT HEX(157);
| HEX(157) |
| 9D       | 
1 row in set (0.00 sec)

Example of MySQL HEX() function on character value

In the above MySQL statement, the argument 'Q' is a string. The character of the string is converted to two hexadecimal digits. The output is 51.




mysql> SELECT HEX('Q');
| HEX('Q') |
| 51       | 
1 row in set (0.00 sec)

Follow us on Facebook and Twitter for latest update.

We are closing our Disqus commenting system for some maintenanace issues. You may write to us at reach[at]yahoo[dot]com or visit us at Facebook