【发布时间】:2020-07-05 06:03:53
【问题描述】:
我正在使用以下 SQL 来识别表“transaction_list”中的重复项。这完美地工作。现在我想根据这些条件从该表中删除所有重复项,只保留最新条目。这些可以由列“last_update”标识。我尝试了不同的 DELETE 语句,但没有奏效。任何建议都受到高度赞赏。
SELECT par_num
,tran_num
,COUNT(*) AS num_duplicates
FROM transaction_list
WHERE last_update >= to_date('01-mar-2020 00:00:00', 'dd-mon-yyyy
hh24:mi:ss')
GROUP BY par_num
,tran_num
HAVING COUNT(*) > 1
ORDER BY par_num
【问题讨论】:
-
3 月 1 日在您的示例代码中有什么意义?您是特别想要那个日期和时间,还是只是想在决定删除哪个
par_num / tran_num重复项时将last_update用作决胜局?
标签: sql oracle duplicates sql-delete