删除oracle SQL中超过24小时的记录(delete records older than 24 hours in oracle SQL)

我想删除所有超过24小时的记录。 我使用以下查询相同,但有时不完美运行。 我想知道我的查询是对还是错? 或者哪种方法更好。

delete from TEMP_SERVICE_OPTION where EVENT_DATE < TRUNC(SYSDATE) - 1;

I want to delete all the records which is older than 24 hours. I am using the below query for the same but sometimes doesn't run perfectly. I want to know whether my query is right or wrong ? Or which is better way to do so.

delete from TEMP_SERVICE_OPTION where EVENT_DATE < TRUNC(SYSDATE) - 1;

原文:https://stackoverflow.com/questions/29097124

更新时间:2019-12-22 14:12

最满意答案

如果你想要超过24小时,那么:

where event_date < sysdate - 1

如果你想在昨天之前 ,那么做:

where event_date < trunc(sysdate) - 1

至于性能,这取决于有多少行被删除。 如果你的表只有成千上万行,那么这很好。 如果它有数百万行,那么您可能需要在event_date上有一个索引。 或者,您甚至可能想要采取不同的方法 - 将数据选择到临时表格中,截断原始表格,然后重新插入它。

If you want older than 24 hours then do:

where event_date < sysdate - 1

If you want before yesterday, then do:

where event_date < trunc(sysdate) - 1

As for performance, that depends on how many rows are being deleted. If your table only has thousands of rows, then this is fine. If it has millions of rows, then you might want an index on event_date. Or, you might even want to take a different approach -- selecting the data into a temporary table, truncating the original table, and then re-inserting it.

2015-03-17

相关问答

SELECT *

FROM table_name

WHERE table_name.the_date > DATE_SUB(CURDATE(), INTERVAL 1 DAY)

SELECT *

FROM table_name

WHERE table_name.the_date > DATE_SUB(CURDATE(), INTERVAL 1 DAY)

SELECT DISTINCT c.constit_id AS constitid,

REPLACE (c.in_labelname, 'None', '') AS fullname,

c.firstname AS firstname, c.lastname AS lastname,

c.indiv_title AS title, e.e_addr AS email,

'InAct

...

我不确定你的架构,但我会采用不同的方式。 我会有一个与验证链接对应的数据库记录的日期/时间。 单击链接时,请验证数据库记录的日期和时间是否在当前时间的24小时内。 如果是这样,请允许,否则拒绝它。 I'm not sure of your schema but I would do it a different way. I would have a date/time against the database record that corresponds to the validation l

...

对于OBIEE报告: timestampadd(SQL_TSI_DAY,-30,CURRENT_DATE)

(要么) SYSDATE, cast(EVALUATE('SYSDATE-30') as timestamp)

对于SQLPLUS,请尝试此操作 - SYSDATE将返回当前日期; 减去30天数: SELECT *

FROM TABLE

WHERE DATE_FIELD < SYSDATE-30;

参考文献: http://oracle.ittoolbox.com/grou

...

假设这是Oracle,那么: select name, count(name)

from table

where gmts > sysdate -1

or name = (select name from table where gmts > sysdate -2 and rownum <= 1)

group by name

order by gmts desc;

如果是MySQL使用限制: select name, count(name)

from table

...

通过执行以下操作,您可以获取datetime值: SELECT DATEADD(HOUR,6,CONVERT(DATETIME, CONVERT(DATE ,GETDATE()))) Today6AM,

DATEADD(HOUR,-18,CONVERT(DATETIME, CONVERT(DATE ,GETDATE()))) Yesterday6AM

通过这样做: CONVERT(DATE ,GETDATE())您将剥离今天日期的时间部分。 将它转换回datetime为您今天提供午

...

我能够通过使用dbenham的getTimestamp.bat解决问题: http : //www.dostips.com/forum/viewtopic.php? f = 3& t = 4847&p = 274222#p27422 这是我能找到的唯一能够计算昨天日期的工作批处理文件(可能是任何一天)。 它可能是唯一可用的,因为所有其他(以及所有关于StackOverflow线程的链接)都不考虑区域设置,因此它们甚至都没有为我启动。 call getTimeStamp -od -1 -f {dd}

...

SELECT * FROM stats WHERE STR_TO_DATE(timespan,"%W, %b %d %Y, %h:%i:%s %p") >= date_sub(now(), INTERVAL 1 DAY)

STR_TO_DATE会将您的字符串转换为日期格式(Ymd H:i:s)然后您可以将它与now()返回的日期进行比较 SELECT * FROM stats WHERE STR_TO_DATE(timespan,"%W, %b %d %Y, %h:%i:%s %p") >= d

...

如果你想要超过24小时,那么: where event_date < sysdate - 1

如果你想在昨天之前 ,那么做: where event_date < trunc(sysdate) - 1

至于性能,这取决于有多少行被删除。 如果你的表只有成千上万行,那么这很好。 如果它有数百万行,那么您可能需要在event_date上有一个索引。 或者,您甚至可能想要采取不同的方法 - 将数据选择到临时表格中,截断原始表格,然后重新插入它。 If you want older than 24 h

...

这比任何事情都更具信息性,或许也可以回答你的问题。 我正试图扩展我上面的长篇评论。 这就是我的工作。 这不是圣经和个人偏好的盛行。 在MySQL表中,创建一个INTEGER,甚至VARCHAR也可以。 使用PHP生成时间创建(1970年的一系列数字)。 生成如下: $currentTime = time(); // eg 1439823230 这在INSERT查询期间使用,前提是它们也是通过PHP发起的。 现在,您还可以考虑时区,但这又取决于您的偏好和/或服务器位置。 现在,当您的数据库中有大量项

...

oracle中删除一天记录吗,删除oracle SQL中超过24小时的记录(delete records older than 24 hours in oracle SQL)...相关推荐

  1. 树莓派设置24小时温度记录

    上篇文章介绍了DHT11模块的python3驱动,这次介绍一下如何让Pi24小时记录温度数据. 功能需求分析: 1. 读取温湿度数据并写入日志中: 2. 设置定时触发. 读取温湿度数据并写入日志: 废 ...

  2. blog的访问量超过31000,谨此记录

    截止2010-06-24日,blog的访问量已经超过31000 访问量: 31080 日志数: 313 建立时间: 2009-02-10 更新时间: 2010-06-21[日志] blog的访问量超过 ...

  3. Mysql 查询前24小时、3条离当前时间最近的记录

    Mysql 查询以当前时间往后的24小时内的数据  register_date >=(NOW() - interval 24 hour) 例如: select * from sys_user W ...

  4. 在SQL中删除重复记录(多种方法) [转]

    学习sql有一段时间了,发现在我建了一个用来测试的表(没有建索引)中出现了许多的重复记录.后来总结了一些删除重复记录的方法,在Oracle中,可以通过唯一rowid实现删除重复记录:还可以建临时表来实 ...

  5. GridView RowDeleting 动态添加行,删除行记录 不删除数据库中记录

    如果只需删除GridView中的行, 并不删除数据库中的记录 项次 工号 姓名   1 10022936 gracy.ma 删除 2 10017300 eric.mak 删除 protected vo ...

  6. html页面按钮删除一条数据库,需要添加一个删除按钮到一个HTML表格从数据库中删除记录与消息...

    IDNameCodeActiveEdit <?php foreach($nurseries->result() as $nursery) { ?> <?php echo $nu ...

  7. Oracle数据库中的级联查询、级联删除、级联更新操作教程

    这里整理了Oracle中的三种级联操作,其中Oracle定义外健的时候可以定义级联删除,但是没有级联修改的语法,当然可以用触发器实现,下面我们详细来看Oracle数据库中的级联查询.级联删除.级联更新 ...

  8. SQL Server 使用DELETE 语句删除表中的记录两种情况(删除符合条件的记录,删除所有记录)

    1 使用详解 DELETE 语句 说明:用于删除表中的记录. 语法: DELETE FROM table_name [WHERE some_column operator some_value]; 2 ...

  9. MySQL查看数据库表中的重复记录并删除

    表数据如下 查看用户名相同的记录 select * from user where username in (select username from user group by username H ...

最新文章

  1. 串口基础类库(WIN32)异步通信 _COM_H 源代码
  2. python主要运用于-Python的8大主要应用领域,看看哪个是你的菜?
  3. 打印 指定目录下和子目录下的的所有.java文件的路径. (使用FileFilter过滤器)
  4. sql server 交叉表查询实例-成绩统计
  5. json报文转化为xml报文_JSON与XML互相转化(Jackson)
  6. 有一批共n个集装箱要装上2艘载重量分别为C1和C2的轮船,其中集装箱i的重量为wi,且 装载问题要求确定,是否有一个合理的装载方案可将这n
  7. Angular 原理图 Schematics 学习 - 动手开发一个实际的例子
  8. Spring MVC Interceptor Handler InterceptorAdapter HandlerInterceptor示例
  9. Java-编程规范与代码风格
  10. 图论之二分图-HihoCoder1121
  11. mybatis-generator-gui--一个mybatis代码自动生成界面工具
  12. 如何将倾城时光录制成MP3格式
  13. php excel数据导出
  14. 提升安全性----用户资金防篡改
  15. linux安全擦除ssd命令,如何在不破坏SSD的情况下安全擦除SSD | MOS86
  16. 推荐一款录屏软件——EV录屏
  17. 华为onu 调为交换机_华为MA5626配置成普通交换机的方法.docx
  18. 网站域名https显示证书错误如何解决
  19. 手机信号强度大小的意义
  20. 数字化营销云与IPFS有效结合 以创新重塑行业格局

热门文章

  1. 如何利用android来赚钱
  2. 这四个方面告诉您抖音本地广告效果怎么样
  3. 基于PWM控制的声音播放的实现
  4. 学习好seo优化工作内容
  5. Maven - 编译报错Execution repackage of goal spring-boot-maven-plugin;Unable to find main class
  6. 代码实现地图截图功能
  7. Gentle adaboost解释
  8. buly上传Mapping文件
  9. 超详细的OPA364AIDBVR规格参数介绍
  10. SQL交叉表查询 如何实现