【发布时间】:2019-07-28 04:15:38
【问题描述】:
我有一个表,其中一列有多个重复的行。所以我想清除重复的数据。
事件表:
event_id, event_type, data_id, data date
1 insert 1 x 06.03.2019 13:04
2 update 1 x1 06.03.2019 13:05
3 update 1 x11 06.03.2019 13:06
4 insert 2 y 06.03.2019 13:07
5 update 1 x111 06.03.2019 13:08
6 delete 1 x111 06.03.2019 13:09
7 update 2 y1 06.03.2019 13:10
8 update 2 y11 06.03.2019 13:11
9 update 2 y11 06.03.2019 13:12
每个数据 id 都有1 插入、N 更新和1 删除表中的事件行。所以我想删除N-1更新事件,但最后一个事件不会被删除。
例如,在此表中,data_id=1 的更新事件为 2,3,5。我想删除 2 和 3 但不是 5。因为5是最后一次更新。
【问题讨论】:
-
最后按 id 或日期?
-
event_id 是增量的,也是数据的。没关系。
标签: sql postgresql duplicates sql-delete postgresql-9.5