Trong Cơ sở dữ liệu Oracle, bạn có thể sử dụng TO_CHAR()
hàm để chuyển đổi một số sang hệ thập lục phân tương đương của nó. Để thực hiện việc này, hãy sử dụng X
phần tử định dạng.
Ví dụ
Dưới đây là một ví dụ để chứng minh:
SELECT TO_CHAR(15, 'X')
FROM DUAL;
Kết quả:
TO_CHAR(15,'X') __________________ F
F là hệ thập lục phân tương đương với 15 và đó là giá trị được trả về.
Zeros hàng đầu
Bạn chỉ có thể đặt trước phần tử này bằng 0
(trả về các số 0 ở đầu) hoặc FM
(ngăn chặn đệm).
Đây là những gì sẽ xảy ra khi chúng ta đặt trước nó bằng 0
:
SELECT TO_CHAR(15, '0X')
FROM DUAL;
Kết quả:
TO_CHAR(15,'0X') ___________________ 0F
Loại bỏ khoảng trống hàng đầu
Nếu bạn không chỉ định 0
cũng không phải FM
với X
, thì giá trị trả về luôn có một ô trống ở đầu.
Đây là những gì sẽ xảy ra khi chúng tôi sử dụng FM
công cụ sửa đổi định dạng để loại bỏ phần đệm:
SELECT TO_CHAR(15, 'fm0X')
FROM DUAL;
Kết quả:
TO_CHAR(15,'FM0X') _____________________ 0F
Khoảng trống ở đầu đã biến mất.
Chữ hoa và chữ thường
Chuyển một chữ hoa X
kết quả là giá trị hex viết hoa và chuyển x
viết thường dẫn đến giá trị hex viết thường:
SELECT
TO_CHAR(15345, 'fm0XXXX'),
TO_CHAR(15345, 'fm0xxxx')
FROM DUAL;
Kết quả:
TO_CHAR(15345,'FM0XXXX') TO_CHAR(15345,'FM0XXXX') ___________________________ ___________________________ 03BF1 03bf1
Không phải số nguyên
Nếu số không phải là số nguyên, thì nó được làm tròn thành số nguyên gần nhất:
SELECT
TO_CHAR(12.49, 'fm0xxxx') AS "12.49",
TO_CHAR(12.50, 'fm0xxxx') AS "12.50"
FROM DUAL;
Kết quả:
12.49 12.50 ________ ________ 0000c 0000d