And*_*rew 5 sql oracle datetime date sql-delete
我想删除超过24小时的所有记录.我使用下面的查询相同但有时不完美运行.我想知道我的查询是对还是错?或者哪种方式更好.
delete from TEMP_SERVICE_OPTION where EVENT_DATE < TRUNC(SYSDATE) - 1;
Run Code Online (Sandbox Code Playgroud)
Gor*_*off 10
如果你想要超过24小时,那么:
where event_date < sysdate - 1
Run Code Online (Sandbox Code Playgroud)
如果你想在昨天之前,那么做:
where event_date < trunc(sysdate) - 1
Run Code Online (Sandbox Code Playgroud)
至于性能,这取决于要删除的行数.如果你的表只有几千行,那么这很好.如果它有数百万行,那么您可能需要索引event_date
.或者,您甚至可能希望采用不同的方法 - 将数据选择到临时表中,截断原始表,然后重新插入.
归档时间: |
|
查看次数: |
11009 次 |
最近记录: |