社区
Oracle
帖子详情
关于utl_raw.cast_to_number
seven7nine
2008-11-11 02:34:47
SELECT utl_raw.cast_from_number(100) FROM dual;
-------------
结果为:C202
另:
utl_raw.cast_from_number(n IN NUMBER) RETURN RAW;
小弟不了解结果是怎么转化得来的,希望各位帮帮忙。
先谢过了!
...全文
609
2
打赏
收藏
关于utl_raw.cast_to_number
SELECT utl_raw.cast_from_number(100) FROM dual; ------------- 结果为:C202 另: utl_raw.cast_from_number(n IN NUMBER) RETURN RAW; 小弟不了解结果是怎么转化得来的,希望各位帮帮忙。 先谢过了!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
taomct
2009-10-06
打赏
举报
回复
select utl_raw.cast_to_number( 'C202182E' )
, utl_raw.cast_from_number(123.45)
from dual
Row# UTL_RAW.CAST_TO_NUMBER('C202182E') UTL_RAW.CAST_FROM_NUMBER(123.45)
1 123.45 C202182E
butchroller
2008-11-11
打赏
举报
回复
1
正数的解读数字为正数,第一个字节必须大于128(0×80)
第一步:指数=第一个字节-193
第二步:每一个其他的数字都减1
第三步:从基于100的指数转换到基于10的指数每一个结果通过100^(EXP-N)其中EXP是第一步中得到的指数N是数字的位置的顺序号(最高位的N=0)
第四步:将所有的值相加
负数的解读数字为负数,第一个字节必须小于128(0×80)
第一步:指数=62-first bytes
第二步:每一个数字被101减
第三步:将基数从100转换为10每一个数字乘以100^(EXP-N)这里EXP是第一步中的指数值N是数字位置顺序值(最高位为0)
第四步:确认尾巴上的102已经抛弃
第五步:将所有的值相加如果数字标示超过21字节,则最后的102不被要求,oracle不会使用22字节来标示的。oracle将自己会考虑所有的字节。
-------------------------------------------------
100 = (0x02 - 1) * 100 ^ (0xC2 - 193 - 0)
textContent
146.Oracle数据库SQL开发之 大对象——大对象简介 的 示例文件
汉字转全拼或首字母Oracle存储过程
汉字转全拼或首字母Oracle存储过程
Oracle实现MD5加密
Oracle实现MD5加密,内含示例代码。
oracle新手入门指导之四——ORACLE数据类型 .txt
oracle新手入门指导之四——ORACLE数据类型 .txtoracle新手入门指导之四——ORACLE数据类型 .txt
SQL Server与Oracle常用函数对比
常用的函数对比,从网上转过来的
Oracle
17,141
社区成员
55,261
社区内容
发帖
与我相关
我的任务
Oracle
Oracle开发相关技术讨论
复制链接
扫一扫
分享
社区描述
Oracle开发相关技术讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章