Oracle 中的 TO_DATE 错误
当我运行此查询时:
SELECT * FROM tbl_person
WHERE to_date(date_create, 'dd/mm/yyyy') < to_date('01/01/2010', 'dd/mm/yyyy')
我遇到以下错误:
ORA-01841:(完整)年份必须介于 -4713 和 +9999 之间,并且不能为 0
需要明确的是,当我添加到表中时,date_create
字段存储了 SYSDATE
。我需要的是从 2010 年 1 月 1 日起从 tbl_person
表中检索数据。
When I run this query:
SELECT * FROM tbl_person
WHERE to_date(date_create, 'dd/mm/yyyy') < to_date('01/01/2010', 'dd/mm/yyyy')
I hit the following error:
ORA-01841: (full) year must be between -4713 and +9999, and not be 0
To be clear, date_create
field stored SYSDATE
when I added into table. What I need is to retrieve data from tbl_person
table starting from 01/01/2010 onward.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您不想在 DATE 致电 TO_DATE。只需在查询中使用日期列(并将其与日期进行比较)
You don't want to call TO_DATE on a DATE. Just use the date column in the query (and compare it to a date)