oracle - Oracle 中的 TO_DATE 错误

标签 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: (full) year must be between -4713 and +9999, and not be 0

需要明确的是,当我添加到表中时,date_create 字段存储了SYSDATE。我需要的是从 2010 年 1 月 1 日起从 tbl_person 表中检索数据。

最佳答案

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

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

关于oracle - Oracle 中的 TO_DATE 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4870139/

相关文章:

sql - 在要运行多次的 Oracle PL/SQL 脚本中,是否需要清除集合?

oracle - 更新 Oracle 中所有表中的所有行

oracle - ORA-01688 : unable to extend table (. ..) 无法保存日记条目

SQL查找违反UNIQUE的行一起建立索引

java.sql.SQLException : ORA-01461: can bind a LONG value only for insert into a LONG column 异常

java - 将标识符附加到 Oracle session

sql - ALTER 语句 : Why VARCHAR2(50 BYTE) instead of VARCHAR2(50 CHAR)?

javascript - 如何使用 javascript/html 更新 Oracle APEX 表中的记录?

oracle - 注释 Oracle 存储过程

java - 如何使用 Servlet 和 JSP 显示 PDF 文档?