当前位置: 首页 > 面试题库 >

oracle数字格式上不需要的前导空格

陆高峰
2023-03-14
问题内容

我需要在数字前加零(总共8位数字)进行显示。我正在使用oracle。

select to_char(1011,'00000000') OPE_NO from dual;
select length(to_char(1011,'00000000')) OPE_NO from dual;

我得到的不是“ 00001011”,而是“ 00001011”。为什么我会得到额外的前导空白?完成此操作的正确数字格式字符串是什么?

PS我意识到我可以使用trim(),但是我想更好地理解数字格式。

@Eddie:我已经阅读了文档。但是我仍然不明白如何摆脱领先的空白。

@David:那是否意味着只能使用trim()


问题答案:

使用FM(填充模式),例如

select to_char(1011,'FM00000000') OPE_NO from dual;



 类似资料:
  • 问题内容: 如何用Java格式化带有前导符号的数字? 负数正确显示为带前导,但显然正数不显示为。 如何在Java中做到这一点?我当前的货币格式字符串是(是,我需要格式化正/负货币值) 问题答案: 使用负子模式,如javadoc中DecimalFormat所述。 产生(在我的法语语言环境中,空格是分组分隔符,逗号是十进制分隔符):

  • 问题内容: 我正在尝试查找某个列是否需要其功能。 我如何找出表中的此列是否包含在实际数据之前或之后具有空格的记录。 问题答案: 您可以使用函数本身(不是最有效但最准确的)来检查它: 尽管如果要检查然后转身进行修剪,则可能首先需要这样做,如下所示:

  • 问题内容: 我正在尝试执行以下插入操作: 我的MYSQL表的结构是: 但是,当我运行程序时,出现错误 执行查询=“%db.literal(args)”中的“ File“ /usr/lib/pymodules/python2.6/MySQLdb/cursors.py”,第151行 TypeError:%d格式:必须为数字,而不是str“ 问题答案: 格式字符串实际上不是普通的Python格式字符串。

  • 使用C#,我需要一些代码来使用正则表达式将引号内的空格替换为管道字符(|)。问题是字符串可能包含多个带引号的表达式,我只需要引号内的空格。 我尝试了一些方法,但我正在努力解决如何处理引号中可能出现的字数可变的问题。 以下是一些可能输入的内容和所需输出的示例: “word1 word2” - “word1 word2”word3“word4 word5” - word1“word2 word3” -

  • 问题内容: 我有一个包含值的变量。 我希望它准确包含8位数字,即。 是否有PHP函数呢? 问题答案: 用途: 另外,您也可以使用:

  • 提前致谢 编辑:现在,我只是在流长度为奇数的情况下将缓冲区的大小增加1,然后将流以其自己的长度写入缓冲区,从而默认缓冲区的最后一个字节。请告知这样做的任何潜在错误: 再次感谢 编辑:以前的解决方案不起作用。新的方法包括将流传递给string,在字符串末尾添加空格,然后再次转换为stream。到现在都很好。很抱歉我不能发布代码...只是我不知道如何克服StackOverflow中代码的4个空格的策略