当前位置: 首页 > 面试题库 >

根据最大日期/时间删除Oracle中的重复记录

弓玉书
2023-03-14
问题内容

我有以下带有重复信息的示例数据:

ID   Date                 Emp_ID    Name    Keep
---------------------------------------------------------
1    17/11/2010 13:45:22  101       AB      *
2    17/11/2010 13:44:10  101       AB
3    17/11/2010 12:45:22  102       SF      *
4    17/11/2010 12:44:10  102       SF
5    17/11/2010 11:45:22  103       RD      *
6    17/11/2010 11:44:10  103       RD

根据上述数据集,如何删除重复的Emp ID,而仅保留指定了最大日期/时间的Emp ID?

因此,根据以上内容,我只会看到ID:1、3和5。

谢谢。


问题答案:

就像是:

DELETE FROM the_table_with_no_name 
WHERE date_column != (SELECT MAX(t2.date_column) 
                      FROM the_table_with_no_name t2 
                      WHERE t2.id = the_table_with_no_name.id);


 类似资料:
  • 本文向大家介绍Oracle删除重复的数据,Oracle数据去重复,包括了Oracle删除重复的数据,Oracle数据去重复的使用技巧和注意事项,需要的朋友参考一下 Oracle  数据库中查询重复数据: select * from employee group by emp_name having count (*)>1;  Oracle  查询可以删除的重复数据 select t1.* from

  • 名 Middlename lastname dob 地址 城市 状态 电话 验证日期 它有许多相同的行,除了有效日期。例如: 我希望运行一个脚本,删除除最后一列()以外的所有匹配的重复项,只在表中保留以下内容,这是: 它不起作用,实际上弹出以下错误: 另外,我想根据字母表的最后一个字母分阶段运行它。因此,需要在某个地方添加类似这样的lastname。

  • 问题内容: 场景: 我有一个从Excel工作表中检索到具有多个列的数据框。其中一些列是日期:一些仅包含日期(yyyy:mm:dd),一些具有日期和时间戳(yyyy:mm:dd 00.00.000000)。 问题: 当日期不是数据框的索引时,如何从日期中删除时间戳? 我已经尝试了什么: 在SO的其他文章中使用pandas中的日期- 在datetime中删除看不见的字符并转换为字符串以及如何剥离pan

  • 问题内容: 如何构造一个mySQL查询以基于最大值删除行。 我试过了 但是有错误? 问题答案: 采用: 请注意,如果存在重复,则将删除 所有 具有该值的行。 关于1093错误的愚蠢之处在于,您可以通过在自引用之间放置一个子查询来解决它: 说明 MySQL仅在使用&语句时检查是否存在正在更新的同一表的一级子查询。这就是为什么将其放在第二级(或更深层)的子查询替代项中的原因。但这只是检查子查询- JO

  • 我的Oracle表有1,000个观察值,以下2个变量:(两个字段都是varchar) 我是不是漏掉了一些明显的东西? 谢谢

  • 问题内容: 我有一个带有一堆文件的文件夹。我需要删除7月1日之前创建的所有文件。如何在bash脚本中做到这一点? 问题答案: 我认为以下应该做您想要的: 第一行创建一个文件,该文件最后一次修改是在2010年7月1日。第二行在/ path / to / file中找到日期不比虚拟文件新的所有文件,然后将其删除。 如果要再次检查它是否可以正常工作,请删除该参数,它只应列出将要删除的文件。