要保留最新的记录,可以使用以下SQL语句来去重:
WITH cte AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY column_to_check_duplicate ORDER BY date_column DESC) AS rn
FROM your_table
)
DELETE FROM cte WHERE rn > 1;
在上面的代码中,column_to_check_duplicate
是要检查重复的列,date_column
是用来确定最新记录的列。这个语句会删除除了每个 column_to_check_duplicate
最新的记录之外的所有重复记录。