sql怎么选择从某一个时间点开始,每隔几分钟的数据

rainbowlvqq 2013-05-13 10:39:15
我数据库里面有一个字段是DATE类型的,它里面的值是每隔五分钟的记录,现在我需要的是从2013-03-01 00:00:00 开始的每隔15分钟去的记录,不知道怎么取,请各位达人不吝赐教!字段名是rectime,Select * from table where rectime .....
...全文
539 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
善若止水 2014-03-31
  • 打赏
  • 举报
回复
我的想法还不怎么成熟,仅仅有一个思路。先知道在这一时间段内,有多少的时间的间隔。然后用表保存这些间隔,最后依据保存的间隔来获取想要的数据。
宋哥 2014-03-31
  • 打赏
  • 举报
回复
其实只要把几个时间点列出来就行了,如下: select * from table where to_char(rectime,'mi') in ('00','15','30','45');
WSZHAO_SELECT 2014-03-31
  • 打赏
  • 举报
回复

select rectime from TMP where mod(to_char(rectime,'mi'),15)=0


oracle求余函数用函数mod(numer1,number2),其返回的值为其余数值。
u010412956 2013-05-13
  • 打赏
  • 举报
回复
select * from table where mod(to_char(rectime,'mi'),15)=0
rainbowlvqq 2013-05-13
  • 打赏
  • 举报
回复
引用 3 楼 u010412956 的回复:
如果数据是这样,你要的结果是什么 2013-03-01 00:00:00 2013-03-01 00:05:00 2013-03-01 00:10:00 2013-03-01 00:15:00 2013-03-01 00:20:00 2013-03-01 00:25:00 2013-03-01 00:30:00 2013-03-01 00:35:00
需要的数据是这样的 2013-03-01 00:00:00 2013-03-01 00:15:00 2013-03-01 00:30:00
u010412956 2013-05-13
  • 打赏
  • 举报
回复
如果数据是这样,你要的结果是什么 2013-03-01 00:00:00 2013-03-01 00:05:00 2013-03-01 00:10:00 2013-03-01 00:15:00 2013-03-01 00:20:00 2013-03-01 00:25:00 2013-03-01 00:30:00 2013-03-01 00:35:00
rainbowlvqq 2013-05-13
  • 打赏
  • 举报
回复
按照这样做的结果只显示出来2013-03-01 00:15:00一条记录,
睿智天成 2013-05-13
  • 打赏
  • 举报
回复
Select * from table where rectime=to_date('2013-03-01 00:00:00','YYYY-MM-DD HH24:MI:SS')+15/60/24

17,377

社区成员

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

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