Как извлечь 0 перед '.' - PullRequest
0 голосов
/ 16 апреля 2009
select 00.0004 ||' ' || 'USD/MT' from dual 

это дает o / p как

.0004 USD/MT

Я также хочу 0 перед десятичной запятой, чтобы получить результат 0,0004 USD / MT

Кто-нибудь может мне помочь?

Ответы [ 2 ]

3 голосов
/ 16 апреля 2009

Если это действительно Oracle - тогда заменить "выбрать 00.0004" на:

выберите to_char (00.0004, '0.9999')

Функция to_char в Oracle, используемая в этом примере, принимает значение в качестве первого параметра и строку формата для второго параметра. 0 указывает системе сохранить этот числовой заполнитель даже при нулевом значении.

3 голосов
/ 16 апреля 2009

Ваша переменная 00.0004 обрабатывается как число с плавающей запятой (или двойная) и автоматически преобразуется в строку с использованием формата преобразования по умолчанию из-за оператора конкатенации.

Если переменная действительно строка, заключите ее в кавычки.

Если на самом деле это реальное значение, извлекаемое из столбца базы данных, используйте соответствующую функцию:

 TO_CHAR(field, '0.9999')

для преобразования в строку, отформатированную в соответствии с требованиями, перед объединением с другими полями.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...