Sử dụng hàm CONV() để chuyển đổi chuỗi hex sang số thập phân:
select CONV(tenCot, 16, 10) AS tenAlias from tenBang;
Trong đó: 16 là cơ số nguồn (hex), 10 là cơ số đích (thập phân).
Tạo bảng demo
mysql> create table DemoTable (
-> HexString varchar(100)
-> );
Query OK, 0 rows affected (0.82 sec)
Chèn dữ liệu hex
mysql> insert into DemoTable values('A');
Query OK, 1 row affected (0.28 sec)
mysql> insert into DemoTable values('F');
Query OK, 1 row affected (0.19 sec)
mysql> insert into DemoTable values('B');
Query OK, 1 row affected (0.55 sec)
mysql> insert into DemoTable values('ABC');
Query OK, 1 row affected (0.11 sec)
Hiển thị dữ liệu
mysql> select * from DemoTable;
Kết quả
+-----------+ | HexString | +-----------+ | A | | F | | B | | ABC | +-----------+ 4 rows in set (0.00 sec)
Chuyển đổi hex sang số thập phân
mysql> select CONV(HexString, 16, 10) AS Number from DemoTable;
Kết quả
+--------+ | Number | +--------+ | 10 | | 15 | | 11 | | 2748 | +--------+ 4 rows in set (0.00 sec)
Giải thích:
- A (hex) = 10 (dec)
- F (hex) = 15 (dec)
- B (hex) = 11 (dec)
- ABC (hex) = 10×16² + 11×16 + 12 = 2748 (dec)
Mở rộng: Hàm CONV() hỗ trợ chuyển đổi giữa các cơ số từ 2 đến 36. Cú pháp: CONV(so, co_so_nguon, co_so_dich).