admin 管理员组文章数量: 1087652
plsql按时间循环删除数据
按天删除数据
declare HOWMANY_10MINS NUMBER;SPECIFY_TIME DATE := TO_DATE('2020/09/15 23:59:59','yyyy/MM/dd hh24:mi:ss');--截止日期BEGIN_TIME DATE;END_TIME DATE;
beginSELECT (SPECIFY_TIME - TRUNC(MIN(T.sampletime), 'DD')) HOWMANY_10MINSINTO HOWMANY_10MINSFROM datastore T;--获取间隔天数FOR X IN 0 .. HOWMANY_10MINS LOOPBEGIN_TIME := SPECIFY_TIME - (X + 1) ;--增量1END_TIME := SPECIFY_TIME - X;-- delete 操作,请批改删除表信息,及 where 过滤条件。DELETE FROM datastore TWHERE T.sampletime BETWEEN BEGIN_TIME AND END_TIME;--时间条件COMMIT;END LOOP;
end;
按小时删除,如果本身显示只有天的话,可能有问题
declare HOWMANY_10MINS NUMBER;SPECIFY_TIME DATE := TO_DATE('2020/09/19 23:59:59','yyyy/MM/dd hh24:mi:ss');BEGIN_TIME DATE;END_TIME DATE;
beginSELECT (SPECIFY_TIME - TRUNC(MIN(T.sampletime), 'DD')) * 24 HOWMANY_10MINSINTO HOWMANY_10MINSFROM datastore T;FOR X IN 0 .. HOWMANY_10MINS LOOPBEGIN_TIME := SPECIFY_TIME - (X + 1)/24 ;END_TIME := SPECIFY_TIME - X/24;-- delete 操作,请批改删除表信息,及 where 过滤条件。DELETE FROM datastore TWHERE T.sampletime BETWEEN BEGIN_TIME AND END_TIME;COMMIT;END LOOP;
end;
本文标签: plsql按时间循环删除数据
版权声明:本文标题:plsql按时间循环删除数据 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/p/1700299767a386329.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论