我目前正在与某些事情作斗争 这对你来说一定是微不足道的。
我有2个数字191和97,我需要将它们放在SQL请求中,因为chars和97必须打印为097。
起初我尝试了999,但它为我的数字添加了2个空格。 然后是099,它会打印097,但它会为它增加一个空格。
to_char(:center, '099') = " 197" and " 097"
这个空间来自哪里?
感谢。
答案 0 :(得分:3)
您正在寻找的是格式修饰符元素:
to_char(:center, 'fm099')
答案 1 :(得分:2)
领先的空间是潜在的减号。要删除它,您可以使用以下格式的FM
:
to_char(v_num,'FM099')
答案 2 :(得分:0)
9 9999返回具有指定位数的值,如果是正数则带有前导空格,如果是负数则返回前导减去。导出零为空白,除了零值,对于固定的整数部分返回零值点数。
来自http://docs.oracle.com/cd/B19306_01/server.102/b14200/sql_elements004.htm#i34510
使用@DavidAldridge解决方案,或修剪您的价值。
答案 3 :(得分:0)
如果要查找所有位数相同的列值,即使实际值位数较少。试试这个
a) SELECT TO_CHAR(COLUMN_NAME, 'FM099') FROM TABLE_NAME;
b) SELECT TO_CHAR(COLUMN_NAME, 'FM000') FROM TABLE_NAME;
两个都工作正常。但不知道哪一个是最佳选择。