Oracle to_timestamp
// sysdate 是取得不到毫秒的如果要取得毫秒需要用 systimestamp
SELECT TO_CHAR(SYSDATE,'YYYY-MM-DD HH:MI:SS') FROM DUAL; // ok 无ff
SELECT TO_CHAR(SYSDATE,'YYYY-MM-DD HH24 MI SS') FROM DUAL; // ok 无ff
select to_char(SYSDATE, 'dd-MON-yy hh.mi.ss', 'NLS_DATE_LANGUAGE=American') from dual; //ok 无ff
//[Err] ORA-01821: 日期格式无法识别 SYSDATE无毫秒
select to_char(SYSDATE, 'dd-MON-yy hh.mi.ss.ff', 'NLS_DATE_LANGUAGE=American') from dual;
//ok
select to_char(systimestamp, 'dd-MON-yy hh.mi.ss.ff', 'NLS_DATE_LANGUAGE=American') from dual;
// ok
SELECT TO_CHAR(TO_TIMESTAMP('01-APR-21 09.08.00.429000 AM','DD-MON-YY HH.MI.SS.FF AM', 'NLS_DATE_LANGUAGE=American'),'YYYY-MM-DD HH24:MI:SS') FROM DUAL;
// ok
SELECT TO_CHAR(TO_TIMESTAMP('20-APR-21 11.23.43.033389','DD-MON-YY HH24.MI.SS.FF', 'NLS_DATE_LANGUAGE=American'),'YYYY-MM-DD HH24:MI:SS') FROM DUAL;
[Err] 'HH24' 不使用上下午指示符
SELECT TO_CHAR(TO_TIMESTAMP('01-APR-21 09.08.00.429000 AM','DD-MON-YY HH24.MI.SS.FF AM', 'NLS_DATE_LANGUAGE=American'),'YYYY-MM-DD HH24:MI:SS') FROM DUAL;
[Err] ORA-01816: 只能指定一次月份 HH.MM.SS.FF -> HH24:MI:SS.FF
select to_timestamp('20-APR-21 11.23.43.033389','DD-MON-YY HH24.MM.SS.FF') from dual;
[Err] ORA-01843: 无效的月份 中文系统环境的数据库无法识别APR月份 NLS_DATE_LANGUAGE
select to_timestamp('20-APR-21 11.23.43.033389','DD-MON-YY HH24.MI.SS.FF') from dual;
[Err] ORA-01877: 内部缓冲区的字符串太长
select to_timestamp('20-4月-21 11.23.43.033389','DD-MON-YY HH24.MI.SS.FF') from dual;
[Err] ORA-01877: 内部缓冲区的字符串太长
select to_timestamp('20-APR-21 11.23.43.033389','DD-MON-YY HH24.MI.SS.FF', 'NLS_DATE_LANGUAGE=American') from dual;
select to_timestamp('20-APR-21 11.23.43.033389','DD-MON-YY HH24.MI.SS.FF', 'NLS_DATE_LANGUAGE=American') from dual;
// ok
select extract(year from to_timestamp(to_char(systimestamp, 'yyyy-mm-dd hh24.mi.ss.FF'), 'yyyy-mm-dd hh24.mi.ss.FF')) from dual;
// ok
select extract(year from to_timestamp(to_char(systimestamp, 'DD-MON-YY hh24.mi.ss.FF', 'NLS_DATE_LANGUAGE=American'), 'DD-MON-YY hh24.mi.ss.FF', 'NLS_DATE_LANGUAGE=American')) from dual;
[Err] ORA-01877: 内部缓冲区的字符串太长
SELECT to_timestamp(to_char(systimestamp, 'DD-MON-YY hh24.mi.ss.FF', 'NLS_DATE_LANGUAGE=American'), 'DD-MON-YY hh24.mi.ss.FF', 'NLS_DATE_LANGUAGE=American') from dual;
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库