zoukankan      html  css  js  c++  java
  • Mysql设计金钱字段建议

     

    上图以java为例,描述出了我们常见的小数位加减带来的精度问题,不仅仅是java,php,js等等其他语言也都有类似问题,有些语言提供了类似decimal的数据类型,用来精确计算,mysql数据库也有相关的数据类型。

    但这里不介绍上述通过调整数据类型来实现的方式,让我们换一种思路:

    用int整形来定义金钱类型。

    假设项目需要我们精确到小数点后两位,如:12.55元,那么我们可以在代码中定义一个常量,如multiple = 100,数据库中存储的值为12.55 * multiple(100) = 1255,代码中计算也是用1255来计算,这样我们就等于是在进行整型计算,最后返回给客户端时,将整型值除以multiple(100),即1255 / 100 = 12.55,这样就轻松简单多了,无需考虑复杂的数据类型,计算也方便。

  • 相关阅读:
    操作系统简介
    计算机基础
    Django之form
    CMDB资产采集
    Git
    User model
    多级评论
    个人主页
    media路径设置
    Web框架
  • 原文地址:https://www.cnblogs.com/yourstars/p/14271038.html
Copyright © 2011-2022 走看看