Как убрать конечную десятичную запятую, только если она не имеет значений после запятой - PullRequest
0 голосов
/ 04 июня 2019

Мне нужно убрать десятичную точку, только если она не имеет значения после точки например. I100. до I100, полоса. но I100.1 до I100.1 без полосы.

Я пытался с

SELECT rtrim(to_char(100.100, 'FM999999999999999990'), '.') FROM dual

Но это работает не так, как ожидалось.

1 Ответ

0 голосов
/ 04 июня 2019

если значение является строкой, вам не нужно преобразовывать его в строку еще раз. Просто используйте функцию rtrim

SELECT rtrim('100.100', '.') FROM dual;
| RTRIM('100.100','.') |
| :------------------- |
| 100.100              |
SELECT rtrim('100.', '.') FROM dual
| RTRIM('100.','.') |
| :---------------- |
| 100               |

дБ <> скрипка здесь

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