繁体   English   中英

Oracle SQL TO_CHAR函数返回值

[英]Oracle SQL TO_CHAR Function return values

我不明白为什么这两个代码结果完全相同? 我以为如果用引号将字符串连接起来。 为什么第一个不是300.5100? 我知道第二个是400.5。 谢谢

Select to_char('300.5' + '100') From Dual;

Select to_char(300.5 + 100) From Dual;

要在SQL中连接字符串,必须使用|| +仅用于添加数字。 如果您未通过'300.5' + '100' ,则只会得到一个错误,例如,以下是无效的SQL:

select '300.5' + '100'
from dual;

但是正如to_char()期望将数字作为输入参数一样,Oracle隐式地将这些字符串转换为数字,然后将它们相加,就像第二条语句一样。

串联是

'xxx' || 'yyy'

您的示例允许将文字转换为数字,然后视为普通数字。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM