oracle中的零填充到_char

oracle中的零填充到_char,oracle,Oracle,给定 我有以下行为: to_char(myVariable, '00') 我如何用0填充一位数,但仍能显示100? 这就是我想要得到的: 1 -> 01 10 -> 10 100 -> ### 一种选择是使用有条件地填充单个数字的大小写表达式: 1 -> 01 10 -> 10 100 -> 100 选择 myVariable

给定

我有以下行为:

to_char(myVariable, '00')
我如何用0填充一位数,但仍能显示100? 这就是我想要得到的:

1 -> 01
10 -> 10
100 -> ###

一种选择是使用有条件地填充单个数字的
大小写
表达式:

1 -> 01
10 -> 10
100 -> 100
选择
myVariable<10时的情况
然后是_CHAR(myVariable,'00')
ELSE以字符(myVariable)结尾作为输出
从你的桌子上

如果需要更长的数字,请添加更多的9

是否可以使用负值和/或非整数值?如果是,如何显示它们?
SELECT
    CASE WHEN myVariable < 10
         THEN TO_CHAR(myVariable, '00')
         ELSE TO_CHAR(myVariable) END AS output
FROM yourTable
select to_char(1,'FM900'),to_char(10,'FM900'),to_char(100,'FM900'),to_char(100,'FM900'),to_char(1000,'FM900')   from dual;