Как я могу форматировать центы только тогда, когда это необходимо в Oracle SQL server

#sql #oracle

#sql #Oracle

Вопрос:

Как я могу отформатировать столбец в Oracle SQL таким образом, чтобы, когда в номере нет центов, он не отображался, однако, когда в нем есть центы, он будет отображаться.

т. е.

 113.00 would show as 113

113.11 would show as 113.11

113.10 would show as 113.10
  

Заранее спасибо.

Комментарии:

1. Иногда лучшим решением является вопрос «почему». Лично меня свело бы с ума, если бы мне пришлось прочитать отчет, в котором содержится список числовых значений, в которых не используется постоянное количество знаков после запятой.

Ответ №1:

Один из методов заключается в использовании case и преобразовании в строку:

 select (case when col = trunc(col) then to_char(trunc(col))
             else to_char(col, 'FM999.00')
        end)