storing money amounts in mysql(在mysql中存储金额)
问题描述
我想将 3.50 存储到 mysql 表中.我有一个存储它的浮点数,但它存储为 3.5,而不是 3.50.我怎样才能让它有尾随零?
不要将货币值存储为浮点数,使用 DECIMAL 或 NUMERIC 类型:
MySQL 数字类型文档
编辑 &澄清:
浮点值容易受到舍入误差的影响,因为它们的精度有限,因此除非您不在乎只能得到 9.99 而不是 10.00,否则您应该使用 DECIMAL/NUMERIC,因为它们是不存在此类问题的定点数.>
I want to store 3.50 into a mysql table. I have a float that I store it in, but it stores as 3.5, not 3.50. How can I get it to have the trailing zero?
Do not store money values as float, use the DECIMAL or NUMERIC type:
Documentation for MySQL Numeric Types
EDIT & clarification:
Float values are vulnerable to rounding errors are they have limited precision so unless you do not care that you only get 9.99 instead of 10.00 you should use DECIMAL/NUMERIC as they are fixed point numbers which do not have such problems.
这篇关于在mysql中存储金额的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:在mysql中存储金额
基础教程推荐
- SSMS 中的权限问题:“对象 'extended_properties'、数据库 'mssqlsystem_resource'、... 错误 229)上的 SELECT 权限被拒绝" 2022-01-01
- 将 SQL Server DateTime 列迁移到 DateTimeOffset 2021-01-01
- SQL:使用来自具有相同列名的两个表中的数据... 2021-01-01
- 如何使用 mysql.connector 禁用查询缓存 2022-01-01
- SQL 效率:WHERE IN 子查询 vs. JOIN 然后 GROUP 2021-01-01
- 是否可以执行按位分组功能? 2021-01-01
- 无法解决整理冲突 2021-01-01
- SQL Server 实例在登录协商期间返回无效或不受支持的协议版本 2021-01-01
- 在 SQL 中连接多个表 2021-01-01
- 需要 MySQL 5.1 中的抽象触发器来更新审计日志 2021-01-01
