【发布时间】:2015-02-03 15:37:29
【问题描述】:
当我执行给定的查询时,我遇到了错误。当我用 * 替换 count(*) 但仍然滚动结果集时,相同的查询返回结果,再次给我同样的错误。请帮助解决这个问题。
SELECT count(*)
FROM cd_table
WHERE
SW_CODE = 'PSTN' AND
CRP_CODE = 'WLR' AND
ERR_CODE = nvl('', ERR_CODE) AND
PRS_ID = 'E' AND
STATUS in ('0', '1') and
TO_DATE(TRANS_ST_DATE,'DD/MM/YY') > sysdate-90 ;
TRANS_ST_DATE 中的值是一个 varchar,数据看起来像 23/09/14。
ORA-01861: 文字与格式字符串不匹配 01861. 00000 - “文字与格式字符串不匹配” *原因:输入中的文字必须与输入中的文字长度相同 格式字符串(前导空格除外)。如果 “FX”修饰符已打开,文字必须完全匹配, 没有额外的空格。 *操作:更正格式字符串以匹配文字。
【问题讨论】:
-
更改:ERR_CODE = nvl('', ERR_CODE) AND to:ERR_CODE IS NULL AND
-
它工作正常sqlfiddle.com/#!4/d41d8/38317你可能没有你在
TRANS_ST_DATE中的想法