基于两个(或更多)列清除Oracle表中的重复项

时间:2017-09-14 09:57:28

标签: sql oracle oracle-sqldeveloper

我创建了一个包含我在仪表板中描述的数据的表。

那么,每个月应该只存在一条记录。

我的查询带来了下面的Oracle表:

select * from PPLP_LOAD_GENSTAT order by 2 desc

输出:

enter image description here

例如,我想删除PPL_IMPORT_CALLHOSTED_ESTIMATES双记录并保留一个记录。等等其他重复记录。如何执行通用查询以删除重复并仅保留一行作为原始行?

怎么可能?

2 个答案:

答案 0 :(得分:2)

假设您需要最广泛的参数,最短开始时间和最长结束时间,请使用TwoPkMINMAX

的组合
GROUP BY

答案 1 :(得分:1)

根据你的评论'它与时间(秒)的确切细节无关我只想保留其中一个'

您可以这样继续:

SELECT DISTINCT PPLP_NAME, TO_CHAR(START_TIME, 'DD/MM/YYYY HH24:MI'), TO_CHAR(END_TIME, 'DD/MM/YYYY HH24:MI'), ROWS_LOADED
FROM PPLP_LOAD_GENSTAT