#informatica #informatica-powercenter
#informatica #informatica-powercenter
Вопрос:
Преобразование выражения:
Источник: ДЕСЯТИЧНОЕ число (38,15)
Пример: 11.500000000000000
Цель: плоский файл
Когда я не вношу никаких изменений в исходный код, это дает мне 11.499999999999999 (округляет его), я не хочу округления, я просто хочу 11.500000000000000. Я попытался использовать TO_CHAR в преобразовании выражения и получил 11.5. Проблема в том, что нули удаляются. Я пытался выполнить TO_CHAR с помощью RPAD / INSTR без какой-либо удачи.
Может кто-нибудь, пожалуйста, оказать мне некоторую помощь!
Комментарии:
1. Попробуйте включить высокую точность в свойствах сеанса
2. Пробовал, не повезло. Тот же результат.
3. Ну, тогда вам нужно разделить целочисленную и десятичную части. Затем добавьте 15 нулей к десятичной части и соедините их обратно.
4. Используйте substr с instr для разделения двух частей. Вам лучше использовать несколько переменных портов.
Ответ №1:
Попробуйте использовать следующее
ВЫБЕРИТЕ TO_CHAR(11.500000000000000, 99.999999999999999) ИЗ DUAL;
Я попробовал это на SQL, и оно работает нормально. Дайте мне знать, нормально ли это работает в вашем случае.
Спасибо, Радж