如20140518转成2014--05-18这种格式的,前者是数值型,后者是字符型
oracle把数值型日期转换成日期字符型的操作方法和详细步骤如下:
1、首先,将字符串类型转换为数字类型。
此方法使用to_number()直接进行转换。 具体语法为to_number(STR),如下图所示,然后进入下一步。
2、其次,完成上述步骤后,数字类型将转换为字符串类型。
此转换使用to_char(),其类似于上步骤的to_number()模式。 “999”是代表同样的内容,如下图所示,然后进入下一步。
3、接着,完成上述步骤后,日期类型将转换为字符串类型。
实际上,此方法还使用to_char(),其将日期格式转换为所需的格式类型。 此方法更加个性化,如下图所示,然后进入下一步。
4、然后,完成上述步骤后,以下代码将日期类型转换为更常见和更完整的字符串格式的通用字符串类型,如下图所示,然后进入下一步。
5、随后,完成上述步骤后,将字符串类型转换为日期类型。
此转换方法使用to_date()进行转换。 用法相对简单,转换日期的格式也可以自定义,如下图所示,然后进入下一步。
6、最后,就完成了,其效果如下图所示。这样,问题就解决了。
温馨提示:答案为网友推荐,仅供参考
第1个回答 推荐于2017-09-09
Oracle中没有日期字符型数据,只有日期型数据。
将数值型日期转换成日期型数据用如下语句:
select to_date('20151225','yyyymmdd') from dual;查询结果:
第2个回答 2014-05-19
select to_char(to_date(20140518,'yyyymmdd'),'yyyy-mm-dd') from dual;
数字先默认被强制类型转换为字符,通过to_data转换为日期、to_char转换为你要的日期格式
数字先默认被强制类型转换为字符,通过to_data转换为日期、to_char转换为你要的日期格式
第3个回答 2014-05-19
select to_char(to_date(to_char(20140518),'YYYYMMDD'),'YYYY-MM-DD') from dual本回答被提问者采纳
第4个回答 2015-09-21
to_date(sj,'yyyy-mm-dd hh24:mi:ss')