ใช้ชนิดข้อมูล DECIMAL(precision, scale) สำหรับค่าทศนิยมที่ต้องการความแม่นยำ (เช่น เงิน)
precision= จำนวนหลักทั้งหมด (ซ้าย+ขวาจุดทศนิยม)scale= จำนวนหลักขวาจุดทศนิยม
รูปแบบ: yourColumnName DECIMAL(TotalDigit, DigitAfterDecimalPoint)
ตัวอย่าง
mysql> CREATE TABLE DecimalInsert (Id INT, Name VARCHAR(100), Amount DECIMAL(4,2));
mysql> INSERT INTO DecimalInsert VALUES (1,'John',12.4), (2,'Carol',12.34), (3,'Mike',1.424);
ผลลัพธ์:
+------+-------+--------+
| Id | Name | Amount |
+------+-------+--------+
| 1 | John | 12.40 |
| 2 | Carol | 12.34 |
| 3 | Mike | 1.42 |
+------+-------+--------+
คำอธิบาย: DECIMAL(4,2) เก็บได้สูงสุด 99.99 (4 หลัก 2 ทศนิยม) ค่า 1.424 ถูกปัดเป็น 1.42 (มี Warning) ใช้ DECIMAL แทน FLOAT/DOUBLE สำหรับข้อมูลทางการเงินเพื่อป้องกันปัญหาความแม่นยำ