一个简单的Sql 查询 问题

mulinyeyu 2016-01-15 03:37:21
select t.time1,t.time2 from Students t where t.T_date>='20150301' and t.T_date<='20150331' and (to_date(t.time1,'YYYYMMDDHH24mi')-to_date(t.time2,'YYYYMMDDHH24mi'))*24*60>30


提示错误 ORA-01858: 在要求输入数字处找到非数字字符


求解
...全文
168 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
mulinyeyu 2016-06-08
  • 打赏
  • 举报
回复
问题解决,是因为在日期数据中存在非日期格式的数据。(标题写的有为题,这个oracle数据库。)
早起晚睡 2016-01-17
  • 打赏
  • 举报
回复
time1、time2应该是这两个的问题
早起晚睡 2016-01-16
  • 打赏
  • 举报
回复
select (to_date('201505011355','YYYYMMDDHH24mi')-to_date('201505011250','YYYYMMDDHH24mi'))*24*60 as ww from dual
这个没问题
江南小鱼 2016-01-16
  • 打赏
  • 举报
回复
另外,撸主测试下面的sql,看能否正确执行
select  (to_date(sysdate,'YYYYMMDDHH24mi')-to_date(sysdate,'YYYYMMDDHH24mi'))*24*60>30 from dual
如果这条语句执行没问题 那么,很大可能就是#9的推断。
江南小鱼 2016-01-16
  • 打赏
  • 举报
回复
time1、time2是否有不能转换成yyyymmddhh24mi的非法值?
早起晚睡 2016-01-16
  • 打赏
  • 举报
回复
引用 5 楼 From_TaiWan 的回复:
sql好像里没有to_date方法
这是oracle 应该是最后那个类型不正确吧
x4177c 2016-01-16
  • 打赏
  • 举报
回复
to_date函数把字符形式的日期,转换成真正的日期,楼主补下to_date函数先。
秋的红果实 2016-01-15
  • 打赏
  • 举报
回复
sql好像里没有to_date方法
lutaotony 2016-01-15
  • 打赏
  • 举报
回复
应该去查询oracle日期的用法 日期比较 select * from up_date where update between to_date('2007-07-07 00:00:00','yyyy-mm-dd hh24:mi:ss') and to_date('2007-09-07 00:00:00','yyyy-mm-dd hh24:mi:ss') 网上查查应该有不少的
Jia_ShengJie 2016-01-15
  • 打赏
  • 举报
回复
能问一下你的日期想做什么处理吗?
  • 打赏
  • 举报
回复
oracle里面可以日期减日期然后和数字相乘吗?
weixin_31366903 2016-01-15
  • 打赏
  • 举报
回复
to_date是自定义函数,得先搞清楚

110,566

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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