gpt4 book ai didi

sql-server-2005 - 对价格和值(value)使用 varchar 而非十进制有什么好处

转载 作者:行者123 更新时间:2023-12-03 15:09:12 25 4
gpt4 key购买 nike

我和我的 friend 争论反对他在 varchar 中存储价格、值(value)和其他类似信息的建议。

我的观点是基于

  • 计算将变得困难,因为我们需要来回转换。
  • 数据的完整性将丢失。
  • 指数表现不佳
  • 排序和聚合函数也需要转换

  • 等等等等

    但是他说在他以前的工作中,每个人都习惯将这些值存储在 varchar 中,因为在这种方法中 DB 和 APP 之间的通信将非常有效。 (我还是不能接受)

    在 varchar 中存储这些值真的有一些优势吗?

    注意:我不是在谈论 PhoneNo、ID、ZIP Code、SSN 等列。我知道 varchar 最适合这些。这些列是基于值的,肯定会以某种方式参与计算。

    最佳答案

    一个都没有。

    也尝试将值转换回来,看看你丢失了多少数据。

    DECLARE @foo TABLE (bar varchar(30))
    INSERT @foo VALUES (11.2222222222)
    INSERT @foo VALUES (22.3333333333)
    INSERT @foo VALUES (33.1111111111)
    SELECT CAST(CAST(bar AS float) AS varchar(30)) FROM @foo

    我还要提一下,他目前的工作有所不同……他不再是以前的工作了……

    关于sql-server-2005 - 对价格和值(value)使用 varchar 而非十进制有什么好处,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3396781/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com