Oracle 的to_char函数格式化出来的结果中含有空格
发布网友
发布时间:2022-04-23 14:30
我来回答
共6个回答
热心网友
时间:2022-04-08 03:25
如果to_char的前面的参数的长度和后面参数的长度不一致,就会出现空格,这种情况下:
可以通过oracle的trim方法来删除前面出现的空格。
sql:
select to_char('11111','999999') from al;
执行结果:“ 11111”;
select trim(to_char('11111','999999')) from al;
执行结果:“11111”。
热心网友
时间:2022-04-08 04:43
这是因为你们对模式字符串不熟,要作填充模式。语句如下:
select to_char('123','FM00000') from al
这样就对了,前面几位都是笨办法,其实它的格式化输出很强大的,查阅一下相关文档就知道了。
热心网友
时间:2022-04-08 06:18
你没有理解to_char的含义。它是把其他类型的值转换为字符型。
例如可以把DATE型转换为字符型,可以把NUMBER型转换为字符型。
你的123本来就是一个字符型 你为啥还要格式化哪?你想实现什么功能哪?
想要字符123变成00123吗?那样可以用lpad函数。
热心网友
时间:2022-04-08 08:09
你是不需要空格吗?
那加trim()函数就行了 去空格用的
select trim(to_char('123','00000')) from al;
这样就没有空格了
热心网友
时间:2022-04-08 10:17
select trim(to_char('123','00000')) from al;
热心网友
时间:2022-04-08 12:42
SELECT lpad('123',5,'0') FROM al;