在sql 中碰到的问题

luhao888 2008-03-05 05:14:43


在sql中我存了一个字段start_date 放的内容类似于20071010,start_time 放的内容类似于81243 即小时,分钟,秒,但是现在碰到一个报表,要求用当前的时间去和存放的时间比较,差值要求是分钟,而且必须在sql中表示出来~把差值放在where里面用做查询的条件。
...全文
140 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
goodmrning 2008-03-08
  • 打赏
  • 举报
回复
关注
yibunengjing 2008-03-08
  • 打赏
  • 举报
回复
select t.* from test t where ((sysdate-to_date(t.start_date||t.start_time, 'YYYYMMDDHH24MISS')) * 60*24) > ?

另外,有一点要注意
start_date 放的内容类似于20071010,一定要8位规范数字
start_time 放的内容类似于081243,注意一定要6位有效数字,不足的请自己在存储进去之前补0
验证可行
IamHades 2008-03-07
  • 打赏
  • 举报
回复
肯定要用到数据库内置函数了撒,to_date...
Squall1009 2008-03-07
  • 打赏
  • 举报
回复
oracle的话可以考虑 (sysdate - to_date(start_date || start_time, 'YYYYMMDDHH24MISS')) >(n分钟/(60*24))
81243 是081243吧?要不前面要补充个0

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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