sql中日期,字符串的获取和转换

------字符串--》date类型

技术分享

代码: select to_date(‘2014-12-19 10:00:00‘, ‘yyyy-mm-dd hh24:mi:ss‘) as a,
                  to_date(‘2014/12/20 10:00:00‘, ‘yyyy/mm/dd hh24:mi:ss‘) as b
        from dual

SQL中不区分大小写,MM和mm被认为是相同的格式代码,所以Oracle的SQL采用了mi代替分钟。select to_date(‘2005-01-01 13:14:20‘,‘yyyy-MM-dd HH24:mi:ss‘) from dual;

date--->字符串

技术分享

代码: select to_char(to_date(‘2014-12-19 10:05:00‘, ‘yyyy-mm-dd hh24:mi:ss‘),‘yyyy-mm-dd hh:mi:ss‘) as a,
                 to_char(to_date(‘2014-12-19 10:05:00‘, ‘yyyy-mm-dd hh24:mi:ss‘),‘yyyy-mm-dd‘) as b,
                 to_char(to_date(‘2014/12/20 10:00:00‘, ‘yyyy/mm/dd hh24:mi:ss‘),‘yy-mm-dd‘)as c
        from dual

格式可以自己选择

另:计算月末 月初

------------------------------------------------------------------------------------------

本月月初:select trunc(to_date(‘20020221‘,‘yyyymmdd‘),‘mm‘) from dual;

下月月初:select trunc(add_months(to_date(‘20020221‘,‘yyyymmdd‘),1),‘mm‘) from dual;

如果只有年月,可以这样写,本月初:select to_date(‘200202‘,‘yyyymm‘) from dual;

                    下月月初:select add_months(to_date(‘200202‘,‘yyyymm‘),1) from dual;

------------------------------------------------------------------------------------------

本月月末:select last_day(‘20140201‘)from dual;

下月月末:select last_day (add_months(‘20140201‘,1))from dual

如果只有年月,可以这样写,本月月末:select add_months(to_date(‘201402‘,‘yyyymm‘)-1,1) from dual

                    下月 月末:select add_months(to_date(‘201402‘,‘yyyymm‘)-1,2) from dual       

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。