Вопрос

Я использую функцию LIST для создания списка значений с разделителями ';'.Тип - числовой (19,2).По какой-то причине точность, по-видимому, игнорируется при использовании функции list.При выполнении простого выбора в этом столбце значения выглядят хорошо, т.е. "12.00".Однако, если я использую LIST(), мои результаты будут иметь формат "12.000000".

Это мой СПИСОК использования:

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

Преобразование не изменяет результат.Есть какие-нибудь идеи?

Спасибо!

Это было полезно?

Решение

Вы пробовали явно преобразовать свою пустую строку?

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

Я столкнулся с аналогичной проблемой типа данных с операторами CASE в T-SQL.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top