Пропадает целочисленная часть у десятичного числа при конкатенации полей

Конкатенирую два поля с десятичным числом и текстом. В выгрузке отдельно это поле отображается корректно, а в поле с конкатенацией только знак перед числом и его десятичная часть.

мой код:

select
  DMTR."Коэфф.",
  DMTR."Позиция",
  DMTR."Коэфф." || ', Поз - ' ||  DMTR."Позиция" as INF
from
  table1 DMTR
where 
  DMTR."Дата " > TRUNC (SYSDATE - 1)

что я получаю

куда пропадают нули до разделителя в поле INF?


Ответы (1 шт):

Автор решения: Akina

куда пропадают нули до разделителя в поле INF?

Не поверишь - но вот именно так выполняется преобразование числа в строку (явное или неявное), если не указывать формат.

Так что надо преобразовать явно, и с указанием нужного формата. См. Format Models: Number Format Models.

Например, так:

select
  to_char(DMTR."Коэфф.", '90.99') as "Коэфф.",
  DMTR."Позиция",
  to_char(DMTR."Коэфф.", '90.99') || ', Поз - ' || DMTR."Позиция" as INF
from
  table1 DMTR
where 
  DMTR."Дата " > TRUNC (SYSDATE - 1)
→ Ссылка