一次将oracle数字转文本的处理中,发现当数据为小数且开头为0的时候转成文本后,首位的0会消失,即0.21会变成.21。
这种转换并不能符合预期。随后发现转化的格式可以通过在TO_CHAR里添加参数控制。
此时虽然通过参数控制显示了小数点前的0,考虑到有时候我们并不能确定小数点前后的数字具体有多少位,如果格式化对应的位数不够,会出现如下情况。
为了应对各种情况,可通过以下方式进行格式化。其中,0表示当该位上没有数字时用0填充,9表示该位上没有数字时用空格填充,FM表示删除9格式化产生的空格。