日期:2014-05-16  浏览次数:20445 次

将日期格式化为“2013年03月17日”的形式
在实际的编码工作中遇到了这样一个需求,使用Oracle得到类似于“2013年03月17日”这种格式的日期结果,搞了半天:

ChenZw> select to_char(sysdate,'yyyy年mm月dd日') from dual;
select to_char(sysdate,'yyyy年mm月dd日') from dual
                       *
第 1 行出现错误:
ORA-01821: 日期格式无法识别

这样不可以,换一种方式呢?

ChenZw>  select to_char(sysdate,'yyyy''年''mm''月''dd''日') from dual;
 select to_char(sysdate,'yyyy''年''mm''月''dd''日') from dual
                        *
第 1 行出现错误:
ORA-01821: 日期格式无法识别

这样也不可以,再换一种方式呢?

ChenZw> select to_char(sysdate,'yyyy"年"mm"月"dd"日"') from dual;

TO_CHAR(SYSDAT
--------------
2013年03月17日

已选择 1 行。

比较奇怪的解决方式。