• 请不要在回答技术问题时复制粘贴 AI 生成的内容
v2dev
V2EX  ›  程序员

大家平常都是以什么类型存储货币类型的数据?

  •  
  •   v2dev · Jan 2, 2020 · 7434 views
    This topic created in 2497 days ago, the information mentioned may be changed or developed.
    39 replies  •  2020-01-03 16:18:10 +08:00
    Liutos
    Liutos
    Jan 2, 2020
    1
    用整型,以分为单位存储
    hzgit
    hzgit
    Jan 2, 2020
    2
    用整型,以分为单位存储
    pota
    pota
    Jan 2, 2020
    3
    用整型,以分为单位存储
    qiayue
    qiayue
    Jan 2, 2020
    4
    最近的一个项目,分都不够,所以直接乘以 10000,用十分之一厘为单位
    l00t
    l00t
    Jan 2, 2020
    5
    double 或者 decimal, 看心情。
    vhysug01
    vhysug01
    Jan 2, 2020
    6
    decimal 12,6 😏
    play78
    play78
    Jan 2, 2020
    7
    最近项目,java 然后用 bigdeciaml , 单价是精确到 0.0001, 订单结算是精确到 0.01
    然后遇到很多四舍五入的问题。java 和 js 默认是银行家舍入算法。要改一下传统意义上的四舍五入。
    lc7029
    lc7029
    Jan 2, 2020
    8
    varchar
    xuanbg
    xuanbg
    Jan 2, 2020
    9
    金额用 decimal(18,2),单价用 decimal(18,6)
    aliipay
    aliipay
    Jan 2, 2020
    10
    @qiayue 以前看别人用分,我自己用万分之 1 元,很长一段时间自以为绝对够用了,直到用了区块链,才发现错了
    IMCA1024
    IMCA1024
    Jan 2, 2020
    11
    decimal
    商城那边小数保留到 2 位, 财务那边因为涉及到税率 用到 4 位后的都有

    不过最近新的要求用 分
    richangfan
    richangfan
    Jan 2, 2020 via Android
    12
    decimal,方便,没高精度要求
    wangyzj
    wangyzj
    Jan 2, 2020
    13
    decimal 9,2
    jowan
    jowan
    Jan 2, 2020
    14
    decimal 16,2
    matepi
    matepi
    Jan 2, 2020
    15
    用整型,另加币种类型字段,按币种类型决定如何定小数点与精度
    diyazhu
    diyazhu
    Jan 2, 2020
    16
    Long, 10^-6 元作为单位
    allanzhuo
    allanzhuo
    Jan 2, 2020
    17
    用啥都可以,但是用 double 的要打死
    BlueSky335
    BlueSky335
    Jan 2, 2020
    18
    用浮点型的大都是计算机基础不过关的
    cigarzh
    cigarzh
    Jan 2, 2020
    19
    bigdeciaml
    realpg
    realpg
    Jan 2, 2020
    20
    bigint 金融类乘以十万 日常类乘以 100
    daozhihun
    daozhihun
    Jan 2, 2020 via Android
    21
    bigdecimal,不要只保留两位小数
    jeffh
    jeffh
    Jan 2, 2020 via Android
    22
    int 够了吧最大 20 亿,千万不能用浮点数,可以认为浮点数是数轴上一串离散的点,不能表示所有数字
    qwerthhusn
    qwerthhusn
    Jan 2, 2020
    23
    @jeffh decimal 也是一串离散的点,不能表示所有数字
    guanhui07
    guanhui07
    Jan 2, 2020
    24
    decimal
    pipapa
    pipapa
    Jan 2, 2020
    25
    用整型,以分 satoshi 为单位存储
    Kmmoonlight
    Kmmoonlight
    Jan 2, 2020 via iPhone
    26
    数字货币从业者 😭
    wang247
    wang247
    Jan 2, 2020
    27
    decimal
    Jafee
    Jafee
    Jan 2, 2020
    28
    考察下 Joda Money ?
    sockball07
    sockball07
    Jan 2, 2020
    29
    @realpg 乘以十万的话 实际最大的数字达到了多少呢
    realpg
    realpg
    Jan 2, 2020
    30
    @sockball07 #29
    发出去后我才发现其实我写错了 是乘以一百万
    我的记忆是六位小数,习惯性想起六位数是十万就发出去了

    金融类系统有标准的 就是这个精度。
    mondeo
    mondeo
    Jan 2, 2020 via Android
    31
    金融类的不能用浮点
    sockball07
    sockball07
    Jan 2, 2020
    32
    @realpg #30 我想知道的是乘完以后数据库存储的数字最大达到了多少😂...
    mingqing
    mingqing
    Jan 2, 2020
    33
    浮点数会有误差
    realpg
    realpg
    Jan 2, 2020
    34
    @sockball07 #32
    没多大啊 也不关心数据多大
    反正我们设计的金额不会上十亿 远低于 bigint 容量
    jry
    jry
    Jan 2, 2020 via iPhone
    35
    @Kmmoonlight 数字货币很蛋疼用什么存储呢?
    KentY
    KentY
    Jan 3, 2020 via iPhone
    36
    可以问问越南,荷兰,哪怕日本的开发者。😁
    szuwl
    szuwl
    Jan 3, 2020 via Android
    37
    money 类型
    wind98
    wind98
    Jan 3, 2020
    38
    bigInt(20)
    单位分
    Kmmoonlight
    Kmmoonlight
    Jan 3, 2020
    39
    @jry 不同交易所的保留位数不一样的 有的整数,有的小数后面八位 , 根据不同的位数 BigDecimal setScale
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2911 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 79ms · UTC 14:00 · PVG 22:00 · LAX 06:00 · JFK 09:00
    ♥ Do have faith in what you're doing.