Trong SQLite, chúng ta có thể sử dụng PRINTF()
hàm hoặc FORMAT()
hàm để định dạng các số với các số không ở đầu.
Ví dụ
SELECT PRINTF('%03d', 7);
Kết quả:
007
Dấu phần trăm (%
) chỉ ra rằng một sự thay thế theo sau.
0
chỉ ra rằng SQLite nên thêm bao nhiêu 0
ký tự thay thế số khi cần thiết để mở rộng giá trị ra chiều rộng được chỉ định.
d
cho biết rằng đối số là một số nguyên có dấu được hiển thị ở dạng thập phân (trái ngược với hệ thập lục phân, bát phân, v.v.).
Vì vậy, nếu chúng ta muốn có nhiều số 0 ở đầu hơn, chúng ta có thể tăng 3
thành một số lớn hơn:
SELECT PRINTF('%09d', 7);
Kết quả:
000000007
Đối với số nguyên, chúng ta có thể thêm dấu phẩy cho dấu phân tách nhóm:
SELECT PRINTF('%0,9d', 72345);
Kết quả:
000,072,345
FORMAT()
Chức năng
SQLite 3.38.0 (phát hành ngày 22 tháng 2 năm 2022) được đổi tên thành PRINTF()
hàm thành FORMAT()
. PRINTF()
gốc tên được giữ lại làm bí danh để tương thích ngược.
Do đó, ví dụ đầu tiên ở trên có thể được thay đổi thành sau:
SELECT FORMAT('%2d%%', 17);
Kết quả:
17%