Oracle 的to_char函数格式化出来的结果中含有空格

sql:selectto_char('123','00000')fromdual;执行后格式化出来的字符中含有空格,如:... sql: select to_char('123','00000') from dual; 执行后格式化出来的字符中含有空格,如: 展开
 我来答
198901245631
2015-11-08 · TA获得超过3.5万个赞
知道大有可为答主
回答量:9037
采纳率:92%
帮助的人:1730万
展开全部
如果to_char的前面的参数的长度和后面参数的长度不一致,就会出现空格,这种情况下:
可以通过oracle的trim方法来删除前面出现的空格。
sql:
select to_char('11111','999999') from dual;
执行结果:“ 11111”;
select trim(to_char('11111','999999')) from dual;
执行结果:“11111”。
qnjian
2011-09-02
知道答主
回答量:9
采纳率:0%
帮助的人:4.6万
展开全部
这是因为你们对模式字符串不熟,要作填充模式。语句如下:
select to_char('123','FM00000') from dual

这样就对了,前面几位都是笨办法,其实它的格式化输出很强大的,查阅一下相关文档就知道了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wangzk0206
2011-09-04
知道答主
回答量:10
采纳率:0%
帮助的人:10.2万
展开全部
你没有理解to_char的含义。它是把其他类型的值转换为字符型。
例如可以把DATE型转换为字符型,可以把NUMBER型转换为字符型。
你的123本来就是一个字符型 你为啥还要格式化哪?你想实现什么功能哪?
想要字符123变成00123吗?那样可以用lpad函数。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
huangshuan1
2011-09-02 · TA获得超过391个赞
知道小有建树答主
回答量:749
采纳率:0%
帮助的人:362万
展开全部
你是不需要空格吗?
那加trim()函数就行了 去空格用的
select trim(to_char('123','00000')) from dual;
这样就没有空格了
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友6a2439f92
2011-09-02 · 超过11用户采纳过TA的回答
知道答主
回答量:38
采纳率:0%
帮助的人:30.3万
展开全部
select trim(to_char('123','00000')) from dual;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式