oracle11G数据库中某列为DATE型日期,如何能转换成number型

oracle11G数据库中某列为DATE型日期,如何能转换成number型,第1张

number类型的to_char是这么用的select to_char( 20150628 ,'9,999,999') from dual

要实现你要的结果,必须这么写

select to_char(to_date( '20150628' ,'yyyymmdd'),'yyyy/mm/dd') from dual

把'2010052' 换成你字段I_Appr_Date就可以了

select to_char(to_date(col,'yyyy/mm/dd'),'yyyy/mm/dd') from tb

下面是例子 :

SQL> select to_date(20100628,'yyyy/mm/dd') from dual

2 /

TO_DATE(201006

28-6月 -15

SQL> select to_char(to_date(20100628,'yyyy/mm/dd'),'yyyy/mm/dd') from dual;

TO_CHAR(TO

2015/06/28

我的方案:

1 增加列:isdigit

2 写一个存储过程或者plsql块,循环每行,尝试转换为数字(to_number),如果转换成功,则isdigit=1,如果触发异常,则为0

3 写一个触发器,对于新增数据,修改数据,则尝试转换为数字,如果转换成功,则isdigit=1,如果触发异常,则为0

4 对数据进行计算时,增加条件 isdigit=1即可。

以上就是关于oracle11G数据库中某列为DATE型日期,如何能转换成number型全部的内容,包括:oracle11G数据库中某列为DATE型日期,如何能转换成number型、Oracle数据库中,如何对某一Varchar类型的列进行数学运算、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9766370.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存