请问在查询(SELECT * FROM t_hr_leavedetail where fstartdatereal>TO_CH)时提示这样的错误,该如何处理?

wangj_0520 2010-11-11 11:53:06
complete! use time:110 end time Thu Nov 11 11:48:57 CST 2010null
Caused exception message is: translate sql exception, message is
parse error. detail message is :

Error: expect token <Punctuation,)>, but current token is <Punctuation,:>, at line 1, column 74)
source sql is :
SELECT * FROM t_hr_leavedetail where fstartdatereal>TO_CHAR(2010-10-2600:00:00, 'YYYY-MM-DD HH24:MI:SS AM DY')
complete! use time:75 end time Thu Nov 11 11:48:42 CST 2010null
Caused exception message is: translate sql exception, message is
format sql error. target database is 'Oracle9' detail message is :
unexpect expression: 'TO_CHAR('2010-10-2600:00:00', 'YYYY-MM-DD HH24:MI:SS AM DY')'
source sql is :
SELECT * FROM t_hr_leavedetail where fstartdatereal>TO_CHAR('2010-10-2600:00:00', 'YYYY-MM-DD HH24:MI:SS AM DY')
complete! use time:90 end time Thu Nov 11 11:47:44 CST 2010null
Caused exception message is: ORA-01843: 无效的月份

complete! use time:50 end time Thu Nov 11 11:46:21 CST 2010
complete! use time:140 end time Thu Nov 11 11:46:02 CST 2010null
Caused exception message is: translate sql exception, message is
format sql error. target database is 'Oracle9' detail message is :
unexpect expression: 'TO_CHAR(wherefstratdatereal, 'YYYY-MM-DD HH24:MI:SS AM DY')'
source sql is :
SELECT TO_CHAR(wherefstratdatereal, 'YYYY-MM-DD HH24:MI:SS AM DY') FROM t_hr_leavedetail
...全文
626 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
minitoy 2010-11-11
  • 打赏
  • 举报
回复
逻辑错误.2010-10-2600:00:00是字符串又不是时间.
贴一下t_hr_leavedetail的表结构,来确认下fstartdatereal这个字段到底是什么类型
心中的彩虹 2010-11-11
  • 打赏
  • 举报
回复
--am 或者pm 都没有00点
fstartdatereal>TO_date('2010-10-26 12:00:00', 'YYYY-MM-DD HH:MI:SS AM')

--看这个例子
SQL> select to_char(TO_date('2010-10-26 12:00:00', 'YYYY-MM-DD HH:MI:SS AM'),'YYYY-MM-DD HH24:MI:SS AM DY'),
2 to_date('2010-10-2600:00:00', 'YYYY-MM-DDHH24:MI:SS'),
3 TO_CHAR(sysdate, 'YYYY-MM-DD HH24:MI:SS AM DY')
4 from dual
5 /

TO_CHAR(TO_DATE('2010-10-2612: TO_DATE('2010-10-2600:00:00',' TO_CHAR(SYSDATE,'YYYY-MM-DDHH2
------------------------------------- ------------------------------ -------------------------------------
2010-10-26 12:00:00 下午 星期二 2010-10-26 2010-11-11 12:39:19 下午 星期四
wangj_0520 2010-11-11
  • 打赏
  • 举报
回复
2010-10-2600:00:00
2010-11-0800:00:00
心中的彩虹 2010-11-11
  • 打赏
  • 举报
回复
[Quote=引用楼主 wangj_0520 的回复:]
complete! use time:110 end time Thu Nov 11 11:48:57 CST 2010null
Caused exception message is: translate sql exception, message is
parse error. detail message is :

Error: expect token <Punctuati……
[/Quote]
fstartdatereal的类型是什么 以及存的是什么样的格式
gelyon 2010-11-11
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 wangj_0520 的回复:]

不成,呵呵
to_date\to_char都不成,不知道这个是什么原因?
[/Quote]
fstartdatereal字段类型是date还是varchar2 ?格式是怎么样的?
wangj_0520 2010-11-11
  • 打赏
  • 举报
回复
不成,呵呵
to_date\to_char都不成,不知道这个是什么原因?
gelyon 2010-11-11
  • 打赏
  • 举报
回复

补充点:
fstartdatereal字段类型是date还是varchar2 ?格式是怎么样的?
如果是date 用我上面那个to_date函数就可以
gelyon 2010-11-11
  • 打赏
  • 举报
回复

看这个你就晓得了撒:ORA-01843: 无效的月份
原因 你格式错误!
TO_CHAR('2010-10-2600:00:00', 'YYYY-MM-DD HH24:MI:SS AM DY')
改为:
to_date('2010-10-2600:00:00', 'YYYY-MM-DDHH24:MI:SS')

1,617

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧