Я поддерживаю процесс ETL, который преобразует входные данные плоских файлов в таблицу базы данных SqlServer.Код почти на 100% T-SQL и работает внутри БД.Я не владею кодом и не могу изменить рабочий процесс.Я могу только помочь настроить «перевод» SQL, который берет данные файла и преобразует их в данные таблицы (подробнее об этом позже).
Теперь, когда заявления об отказе от ответственности ...
Один из наших провайдеров файлов недавно изменил способ представления денежной суммы с '12345.67'
до '12,345.67'
.Наш SQL, который преобразует значение, выглядит как SELECT FLOOR( CAST([inputValue] AS DECIMAL(24,10)))
и больше не работает.То есть запятая прерывает приведение.
Учитывая, что мне нужно сохранить окончательное значение как Decimal (24,10)
тип данных (да, я понимаю, что FLOOR
уничтожает всю точность после десятичной запятой -дизайнер не был синхронизирован с заказчиком) , что я могу сделать, чтобы эффективно отлить эту строку? '
Спасибо за ваши идеи.