为什么我不能格式化sql日期?

发布于 2025-01-10 01:24:27 字数 202 浏览 0 评论 0原文

在下面的代码中,我无法将日期转换为给定的格式。为什么?

select sysdate,to_char('09/21/1990','ddth "of" mm yyyy') as formated
from emp;

错误信息:

ORA-01722: invalid number

In the following code, I can not convert the date to the given format. why?

select sysdate,to_char('09/21/1990','ddth "of" mm yyyy') as formated
from emp;

error message:

ORA-01722: invalid number

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

倾听心声的旋律 2025-01-17 01:24:27

to_char函数是将DATE类型转换为字符串。您的日期参数已经是一个字符串。如果您确实使用字符串文字执行查询,则必须首先将其转换为 DATE 类型,然后转换为您需要的字符串格式,如下所示

select sysdate,
       to_char(to_date('09/21/1990','MM/DD/YYYY'),'ddth "of" mm yyyy')  as formated
from emp;

The to_char function is to convert a DATE type to a string. Your date parameter is already a string. If you really are executing the query with a string literal, you would have to convert it to a DATE type first, then to the string format you need, like this

select sysdate,
       to_char(to_date('09/21/1990','MM/DD/YYYY'),'ddth "of" mm yyyy')  as formated
from emp;
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文