Dùng DECIMAL(TongSoChuSo, SoChuSoSauDauPhay) để lưu giá trị tiền tệ chính xác (không sai số làm tròn như FLOAT/DOUBLE).
Ví dụ: 345.66
- Tổng 5 chữ số (34566)
- 2 chữ số sau dấu phẩy (66)
- →
DECIMAL(5,2)
Tạo bảng
mysql> CREATE TABLE MoneyRepresentation (Money DECIMAL(5,2)); Query OK, 0 rows affected (0.65 sec) mysql> INSERT INTO MoneyRepresentation VALUES(345.66); Query OK, 1 row affected (0.13 sec) mysql> SELECT * FROM MoneyRepresentation;
+--------+ | Money | +--------+ | 345.66 | +--------+ 1 row in set (0.00 sec)
Lưu ý: Không dùng FLOAT/DOUBLE cho tiền tệ do lỗi làm tròn binary floating point. DECIMAL lưu chính xác thập phân.