Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Sử dụng SUM trên dữ liệu FLOAT

Tôi không chắc bạn đang sử dụng phiên bản nào, nhưng có vẻ giống như liên kết này mô tả những gì bạn đang trải qua.

Từ liên kết:

mysql> select * from aaa;
+----+------------+------+
| id | month_year | cost |
+----+------------+------+
|  1 | 2002-05-01 | 0.01 |
|  2 | 2002-06-01 | 1.65 |
|  3 | 2002-07-01 | 0.01 |
|  4 | 2002-01-01 | 0.01 |
+----+------------+------+

mysql> select id, sum(cost) from aaa group by id;
+----+---------------------+
| id | sum(cost)           |
+----+---------------------+
|  1 | 0.00999999977648258 |
|  2 |    1.64999997615814 |
|  3 | 0.00999999977648258 |
|  4 | 0.00999999977648258 |
+----+---------------------+

The SUM function changes 0.01 to 0.00999999977648258.

Số dấu phẩy động được lưu trữ dưới dạng giá trị gần đúng; nếu bạn đang lưu trữ giá, bạn nên sử dụng kiểu dữ liệu thập phân để lưu trữ các giá trị chính xác.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bảng Lỗi Mysql 1050 đã tồn tại trong khi trên thực tế, nó không

  2. Làm cách nào để buộc đăng xuất khỏi tất cả người dùng đối với một trang web?

  3. Lưu trữ các thực thể html trong cơ sở dữ liệu? Hoặc chuyển đổi khi truy xuất?

  4. 24 giờ giá trị

  5. Cấp quyền cho bảng và cột MySQL