如何解决将oracle中的负数转换为十六进制会产生错误的输出?
我正在使用下面的select语句将正数转换为十六进制
SQL>select to_char('2122699925','XXXXXXXXXXXXXXXX') from testable
Output : 7E85D495
但是TO_CHAR为负数,它给出的输出为#################
SQL>select to_char('-2122699925','XXXXXXXXXXXXXXXX') from testable
Output : #################
所需的输出应为817A2B6B。有什么想法吗?
解决方法
文档说(表2-13数字格式元素),here
返回指定位数的十六进制值。如果指定的数字不是整数,则Oracle数据库会将其舍入为整数。
限制:
此元素仅接受正值或0。负值将返回错误。
.......
但是我能够找到下面的链接,该链接进行负数对话。我无意复制它,但会以任何方式为您提供链接,
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。