KSQL编写日期比较

莫欺少年穷 2013-08-30 10:59:33
执行ksql:SELECT HR_HTGL.fXM,HR_HTGL.fXB,HR_HTGL.fHTLX,HR_HTGL.fHTKSRQ,HR_HTGL.fHTJSRQ FROM HR_HTGL HR_HTGL WHERE HR_HTGL.fQDZTBM='submit' AND DATEDIFF(Day, HR_HTGL.fHTJSRQ, 2013-7-30)<45时出错!


找不到Day对应的符号!


我需求是查询HR_HTGL.fHTJSRQ比较当前日期是45天之内的数据,但是这个KSQL中日期比较总是不对,试了好多种了,数据库是查询没问题,就是KSQL不懂。

还有一个小问题,我是JAVA中如下获取当前日期:
Calendar cal=Calendar.getInstance();
String today = cal.get(Calendar.YEAR)+"-"+cal.get(Calendar.MONTH)+"-"+cal.get(Calendar.DATE);
可是今天是2013-8-30,为什么获取到的today是2013-7-30?
...全文
228 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
莫欺少年穷 2013-08-31
  • 打赏
  • 举报
回复
囧。。问题解决了,KSQL报错是不支持SQL函数,KSQL的日期加减不需要函数直接加减就是得到的天数啊! 至于第二个问题,我是不知道这个月的范围是0-11,说错了... 可以结贴了。
Wentasy 2013-08-30
  • 打赏
  • 举报
回复
1.KSQL报什么错? 2.语法相关的不要问为什么。Java是一门编程语言,编程语言就有语法,有规则就有编译程序对程序进行词法分析、语法分析、语义分析与中间代码产生、优化、生成目标代码。这个Calendar的get方法就是这样写的,你问为什么有用吗?有时间去问写这些类的大牛去吧,没时间就没有必要弄懂为什么是这样。有些东西是不需要弄懂为什么的,语法就是一类。当然程序逻辑、业务流程必须弄懂。
forgetsam 2013-08-30
  • 打赏
  • 举报
回复
1 KSQL是什么东西 2 Java中就规定0-11对应1-12月,没有为什么。

3,490

社区成员

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

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