【问题标题】:SQL List Function Removing PrecisionSQL 列表函数去除精度
【发布时间】:2009-02-05 23:27:12
【问题描述】:

我正在使用 LIST 函数来创建一个 ';'分隔的值列表。类型是数字 (19,2)。由于某种原因,使用 list 函数时似乎忽略了精度。在此列上执行简单选择时,值看起来不错,即“12.00”。但是,如果我使用 LIST() 我的结果格式为“12.000000”

这是我的 LIST 用法:

LIST(case when tblWOService.PricePerVehicle is null then ' ' else CONVERT(decimal(19,2),tblWOService.PricePerVehicle end,';')

CONVERT 不会改变结果。有什么想法吗?

谢谢!

【问题讨论】:

    标签: sql reporting sybase sql-function


    【解决方案1】:

    您是否尝试过显式转换您的空字符串?

    LIST(
        case when tblWOService.PricePerVehicle is null then CONVERT(decimal(19,2),' ')
            else CONVERT(decimal(19,2),tblWOService.PricePerVehicle) end,';'
    )
    

    我在 T-SQL 中遇到了与 CASE 语句类似的数据类型问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-27
      相关资源
      最近更新 更多