Oracle中的TO_DATE错误

时间:2011-02-02 02:13:31

标签: oracle oracle10g oracle11g

当我运行此查询时:

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表中检索数据。

1 个答案:

答案 0 :(得分:6)

你不想在DATE打电话给TO_DATE。只需在查询中使用日期列(并将其与日期进行比较)

SELECT *
  FROM tbl_person
 WHERE date_created < to_date('01/01/2010', 'dd/mm/yyyy')