请教一个SQL语句的写法,求赐教~~

七夜未央 2012-07-16 04:12:18
比如我现在有一个这样的表结构,如下:

create table
{
a number(12),
b number(12),
c date
}

那么现在我想将超过当前系统时间两个小时的数据全部查出来,也就是sysdate-c >= 2的记录,这样的SQL该如何写啊,求大神赐教,谢谢了~
...全文
78 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
七夜未央 2012-07-16
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

超过当前系统时间两个小时的数据

超过的话 应该是c-sysdate吧? 思路就这样了 天数差*24 得到小时差 比较就可以了

SQL code
select *
from tb1
where c>=sysdate and (c-sysdate)*24 <= 2
[/Quote]

谢谢啦,测试了一下是OK的,达到我想要的结果了,呵呵~
小德 2012-07-16
  • 打赏
  • 举报
回复
超过当前系统时间两个小时是以系统时间前推2小时?
另一种方式,直接用函数
SELECT * FROM tab WHERE c>=(SYSDATE-numtodsinterval(2,'hour'));
  • 打赏
  • 举报
回复
超过当前系统时间两个小时的数据

超过的话 应该是c-sysdate吧? 思路就这样了 天数差*24 得到小时差 比较就可以了

select *
from tb1
where c>=sysdate and (c-sysdate)*24 <= 2
  • 打赏
  • 举报
回复
(sysdate-c)*24 >= 2

3,491

社区成员

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

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