6

我不知道这是一个错误还是什么,但是当我尝试使用 Oracle 中的 to_char 函数以某种方式格式化星期几时,SQL Plus 给我这个错误:ORA-01821:日期格式无法识别

这是导致问题的行

SELECT TO_CHAR(sysdate,'dsp') from dual;

所以 d 是“星期几”,而 sp 是拼写。这一行应该打印 5,因为我们是星期四。

这很奇怪,因为下一行有效

SELECT TO_CHAR(sysdate,'ddsp') from dual;

dd 是'月中的一天',所以 sql plus 打印了二十九没有任何问题!

有人能告诉我为什么这条线不工作吗?

谢谢..

4

1 回答 1

3

如果您必须完成这项工作,这是一个丑陋的解决方法:

SELECT to_char(to_date(to_char(SYSDATE,'d'),'j'),'jsp') FROM dual;

对我来说似乎是一个错误......

于 2011-09-29T18:16:02.520 回答