从数字列中获取值,删除十进制前的0



数据库中有一个数字列。当使用TO_CHAR作为char获取时,小数点前的数字将丢失。

Select TO_CHAR(column) from table

例如,0.5存储在列中,但当选择时,它返回0.5

同样,如果存储-0.5,则存储-。

这可能是什么原因呢?

是否与NLS设置有关?如果是,应该更改哪个设置来检索存储的值。

你可以这样做:

select to_char(.5,'0.000000')from dual

这不是NLS的问题。NLS改变了小数分隔符,千位分隔符等。不确定小数点后需要多少小数点,所以你可以改变它。我还会查看数字格式模型doc

最新更新