TIMESTAMP类型插入到VARCHAR2后转成DATE类型和指定格式字符串
2015-11-27 20:58
267 查看
Oracle中的由于TIMESTAMP类型数据未做TO_CHAR格式化处理直接插入到VARCHAR2类型字段中。在VARCHAR2存储的格式为27-NOV-15 12.00.00.000000 PM和27-NOV-15 12.00.00.000000 AM这种格式。需求是将数据转换成指定的VARCHAR2(14)类型。
解决办法:将字符串转换成TIMESTAMP类型之后再转换成VARCHAR2(14)类型
SELECT TO_CHAR(CAST('19-NOV-15 11.00.00.000000000 PM' AS TIMESTAMP), 'YYYYMMDDHH24MISS') FROM DUAL;
疑惑解答:
27-NOV-15 12.00.00.000000 PM 是指中午十二点。 27-NOV-15 12.00.00.000000 AM 是指零晨零点。看到这个字符串可能会以为是中午十二点,转换成TIMESTAMP类型再转成VARCHAR2(14)类型后为20151127000000可能会误认为转换错误,其实是正确的。
相关文章推荐
- 智能家居喂鱼系统(五)-树莓派C++库
- 菜鸟学Java----基本类型及其封装类
- 关于switch语句中省略break语句的问题
- c++实现简单的链表
- Java——多人聊天室(基于TCP的网络编程——Socket)
- 局势在恶化
- 分析Android的进程通信机制
- 【Python】Mysql数据库操作类
- C语言开发总结(十一)
- nagios配置详解与集群监控
- codeforces 412C Pattern
- BZOJ 1485: [HNOI2009]有趣的数列( catalan数 )
- javascript中的screen对象
- 最长公共子序列和最长公共子串
- 神经网络
- IOS中url的编码,解码问题
- calculate pow(x,n)
- c++ primer 6 语句
- Cookies学习
- IE中伪类:hover的使用及BUG