Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Tính phần trăm và làm tròn kết quả trong truy vấn MySQL

Sử dụng ROUND() kết hợp CONCAT() để tính phần trăm và định dạng chuỗi kết quả kèm dấu %.

Ví dụ minh họa

Tạo bảng và chèn dữ liệu:

mysql> CREATE TABLE DemoTable1844 (Number INT, TotalNumber INT);
mysql> INSERT INTO DemoTable1844 VALUES(50,500),(80,500),(98,500),(45,500);

Tính phần trăm làm tròn 2 chữ số thập phân:

mysql> SELECT CONCAT(ROUND((Number/TotalNumber)*100, 2), '%') AS Result FROM DemoTable1844;

Kết quả:

+--------+
| Result |
+--------+
| 10.00% |
| 16.00% |
| 19.60% |
| 9.00%  |
+--------+

Mẹo: Dùng CAST(Number AS DECIMAL)/TotalNumber nếu cả hai là INT để tránh chia nguyên số (MySQL 8 đã tự động chuyển đổi).