将整数或十进制数转换为字符串

时间:2015-02-20 18:37:55

标签: sql oracle

我需要以文本格式转换数字。它可以是整数和十进制数。

如果转换整数而不使用regexp_replace

select to_char(999,'FM9999.9') from dual;

999.

解决这个问题的方法是 regexp_replace(to_char(999.9,'FM9999.9'),'[.]$')

没有regexp_replace还有其他办法吗?

1 个答案:

答案 0 :(得分:2)

您可以使用trimrtrim功能:

select to_char(999,'FM9999.9') as plain,
  rtrim(to_char(999,'FM9999.9'),'.') as trimmed
from dual;

PLAIN   TRIMMED
------- -------
999.    999

Documentation for the rtrim function

如果这是你所希望的,那么你不能在to_char()电话中做到这一点;没有format model element使小数点分隔符可选,具体取决于是否有十进制数字。