MySQL的HEX()函数是什么?与CONV()函数有什么不同?
实际上,HEX()函数将十进制或字符串值转换为十六进制值。转换后,MySQL返回该十六进制值的字符串表示形式。
阅读更多:MySQL 教程
语法
HEX(数字或字符串)
如我们所知,HEX()函数可以转换数字或字符串,因此语法中的“Num”表示要转换为十六进制的数字,“Str”是要将其字符转换为两个十六进制数字的字符串。
例子
mysql> Select HEX(210);
+ ---------- +
| HEX(210)|
+ ---------- +
| D2 |
+ ---------- +
1行(0.00 sec)
在上述示例中,210是一个十进制数,它被转换为十六进制字符串表示形式,并被视为BIGINT数字。
mysql> SELECT HEX('NULL');
+ ------------- +
| HEX('NULL')|
+ ------------- +
| 4E554C4 C |
+ ------------- +
1行(0.00 sec)
在上述示例中,“NULL”是一个字符串,该字符串的字符被转换为两个十六进制数字(每个字符两个十六进制数字)。
基本上,MySQL HEX()函数等同于CONV(N,10,16),但基本区别在于HEX()可以将字符串字符转换为两个十六进制数字,而CONV()尝试将字符串字符转换为十六进制字符串时返回0。在以下示例中演示了这一点 –
例子
mysql> Select HEX('N');
+ ---------- +
| HEX('N')|
+ ---------- +
| 4E |
+ ---------- +
1行(0.00 sec)
mysql> Select CONV('N',10,16);
+ ----------------- +
| CONV('N',10,16)|
+ ----------------- +
| 0 |
+ ----------------- +
1行(0.00 sec)
极客教程