Có một số cách để định dạng một số dưới dạng phần trăm trong SQL, tùy thuộc vào DBMS đang được sử dụng.
Dưới đây là các ví dụ về việc thêm dấu phần trăm vào một số trong một số DBMS phổ biến nhất.
MySQL
Trong MySQL, chúng ta có thể sử dụng t he CONCAT()
hàm để nối số và dấu phần trăm:
SELECT CONCAT(3.75, '%');
Kết quả:
3.75%
Xem Định dạng số dưới dạng phần trăm trong MySQL để biết thêm.
Máy chủ SQL
FORMAT()
của SQL Server hàm cung cấp cho chúng tôi P
mã định dạng, được sử dụng để hiển thị dấu phần trăm trong số được định dạng:
SELECT FORMAT(.27, 'P') Result;
Kết quả:
+----------+ | Result | |----------| | 27.00% | +----------+
Xem 4 cách chuyển đổi số thành phần trăm trong SQL Server để biết thêm.
Oracle
Cơ sở dữ liệu Oracle có TO_CHAR(number)
mà chúng ta có thể sử dụng để định dạng một số. Sau đó, chúng ta có thể sử dụng CONCAT()
để nối số và dấu phần trăm:
SELECT CONCAT(TO_CHAR(18, 'fm00D00'), '%')
FROM DUAL;
Kết quả:
18.00%
Xem Định dạng Số dưới dạng Phần trăm trong Oracle để biết thêm.
PostgreSQL
Trong PostgreSQL, chúng ta có thể sử dụng TO_CHAR()
chức năng định dạng một số dưới dạng phần trăm.
Dưới đây là các ví dụ khác nhau để chứng minh một số điều chúng ta có thể làm với chức năng này:
SELECT
TO_CHAR(7, 'fm00%') AS "1",
TO_CHAR(7, 'fm99%') AS "2",
TO_CHAR(7.4567, 'fm0D00%') AS "3",
TO_CHAR(7, 'fm0D00%') AS "4";
Kết quả:
+-----+----+-------+-------+ | 1 | 2 | 3 | 4 | +-----+----+-------+-------+ | 07% | 7% | 7.46% | 7.00% | +-----+----+-------+-------+
Xem 3 cách định dạng số dưới dạng phần trăm trong PostgreSQL để biết thêm.
MariaDB
MariaDB có CONCAT()
chức năng thực hiện công việc:
SELECT CONCAT(7.45, '%');
Kết quả:
7.45%
Xem Thêm dấu phần trăm vào một số trong MariaDB để biết thêm.
SQLite
Với SQLite, chúng ta có thể sử dụng PRINTF()
chức năng:
SELECT PRINTF('%2d%%', 17);
Kết quả:
17%
Theo cách khác, chúng ta có thể nối dấu phần trăm và số nếu được yêu cầu. Xem 2 cách thêm dấu phần trăm vào số trong SQLite để làm ví dụ.
Cập nhật :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.
Vì vậy, ví dụ trên có thể được thay đổi thành sau:
SELECT FORMAT('%2d%%', 17);
Kết quả:
17%