Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL to_char()将2位数字打印为0xx,不接触3位数字_Sql_Oracle - Fatal编程技术网

SQL to_char()将2位数字打印为0xx,不接触3位数字

SQL to_char()将2位数字打印为0xx,不接触3位数字,sql,oracle,Sql,Oracle,我现在正在和一些事情斗争 那对你来说一定很微不足道 我有2个编号191和97,我需要将它们放入SQL请求中,因为chars和97必须打印为097 起初我尝试了999,但它给我的号码增加了两个空格。 然后099,它会打印097,但会增加一个空格 to_char(:center, '099') = " 197" and " 097" 这个空间从哪里来 谢谢。9 9999返回指定位数的值,如果为正数,则前导空格;如果为负数,则前导零为空。前导零为空,但零值除外,它为定点数字的整数部分返回零 从 使用

我现在正在和一些事情斗争 那对你来说一定很微不足道

我有2个编号191和97,我需要将它们放入SQL请求中,因为chars和97必须打印为097

起初我尝试了999,但它给我的号码增加了两个空格。 然后099,它会打印097,但会增加一个空格

to_char(:center, '099') = " 197" and " 097"
这个空间从哪里来


谢谢。

9 9999返回指定位数的值,如果为正数,则前导空格;如果为负数,则前导零为空。前导零为空,但零值除外,它为定点数字的整数部分返回零


使用@davidridge solution,或修剪您的值。

您要查找的是格式修改器元素:

to_char(:center, 'fm099')

前导空间是潜在的负号。要删除它,您可以使用以下格式的
FM

to_char(v_num,'FM099')

如果要查找相同位数的所有列值,即使实际值的位数较少。试试这个

a) SELECT TO_CHAR(COLUMN_NAME, 'FM099') FROM TABLE_NAME;

b) SELECT TO_CHAR(COLUMN_NAME, 'FM000') FROM TABLE_NAME;
两者都很好。但不知道哪一个是最好的选择