我正在使用 SAP BODS,我正在尝试使用 SQL 查询转换从 ORACLE 服务器获取数据。现在该表有一个名为 latest_changed_date 的列,它是一个日期时间列。我只想要该表中昨天和当天的数据。现在由于该列是日期时间,我需要将其转换为日期,但是当我使用 to_date 函数时,出现以下错误。
SELECT *
FROM ABC.TEST
WHERE TO_DATE(LATEST_CHANGED_DATE) = TO_DATE(SYSDATE-1)
数据库错误消息是
ORA-01843: 无效的月份
我尝试在 TO_DATE 条件下给出日期格式,如下所示:
SELECT *
FROM ABC.TEST
WHERE TO_DATE(LATEST_CHANGED_DATE,'YYYY-MM-DD') >= TO_DATE(SYSDATE-1,'YYYY-MM-DD')
在这里我得到了错误:
date format picture ends before converting entire input string
我也使用了 trunc 函数并再次得到:
not a valid month
或者
inconsistent datatypes: expected NUMBER got DATE
下面是该列的示例数据。我只需要列中数据的当前和前一天的数据。
更新:我认为主要问题是我无法为源表中的列确定正确的数据类型,目前我无法确定这一点。