CONV(N,from_base,to_base)
N是要转换的数据,from_base是原进制,to_base是目标进制。
select conv(16,10,16);
+—————-+
| conv(16,10,16) |
+—————-+
| 10 |
+—————-+
1 row in set (0.04 sec)
如果N是有符号数字,则to_base要以负数的形式提供,否则会将N当作无符号数
mysql> select conv(-16,10,16);
+——————+
| conv(-16,10,16) |
+——————+
| FFFFFFFFFFFFFFF0 |
+——————+
1 row in set (0.00 sec)
mysql> select conv(-16,10,-16);
+——————+
| conv(-16,10,-16) |
+——————+
| -10 |
+——————+
1 row in set (0.00 sec)
除了conv,还有几个特定进制转换的函数,如:
hex(N)相当于conv(N,10,16)
oct(N)相当于conv(N,10,8)
bin(N)相当于conv(N,10,2)
另外还有一个convert函数用于转换不同的数据类型的,不要和conv搞混淆了。