Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

คำนวณเปอร์เซ็นต์และปัดทศนิยมใน MySQL Query

การเตรียมข้อมูล

mysql> CREATE TABLE DemoTable1844 (
    Number INT,
    TotalNumber INT
);

mysql> INSERT INTO DemoTable1844 VALUES(50,500);
mysql> INSERT INTO DemoTable1844 VALUES(80,500);
mysql> INSERT INTO DemoTable1844 VALUES(98,500);
mysql> INSERT INTO DemoTable1844 VALUES(45,500);

คำนวณเปอร์เซ็นต์พร้อมปัดทศนิยม 2 ตำแหน่ง

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

ผลลัพธ์:

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

การแยกขั้นตอน

-- 1. คำนวณสัดส่วน (ทศนิยม)
Number / TotalNumber          -- 0.1, 0.16, 0.196, 0.09

-- 2. คูณ 100 ได้เปอร์เซ็นต์
(Number / TotalNumber) * 100  -- 10, 16, 19.6, 9

-- 3. ปัดทศนิยม 2 ตำแหน่ง
ROUND(..., 2)                 -- 10.00, 16.00, 19.60, 9.00

-- 4. ต่อสตริง '%'
CONCAT(..., '%')              -- '10.00%', '16.00%', ...

ฟังก์ชันที่ใช้

  • ROUND(number, decimals) - ปัดเศษตามหลักที่กำหนด
  • CONCAT(str1, str2, ...) - ต่อสตริง
  • FORMAT(number, decimals) - จัดรูปแบบตัวเลขพร้อมคั่นพัน (ไทย: 1,000.00)

ตัวอย่างเพิ่มเติม

-- ใช้ FORMAT แทน (มีคั่นพัน)
SELECT CONCAT(FORMAT((Number/TotalNumber)*100, 2), '%') FROM DemoTable1844;

-- คำนวณใน Subquery เพื่อนำไปใช้ต่อ
SELECT *, (Number/TotalNumber)*100 AS pct FROM DemoTable1844;