要保留最新的記錄,可以使用以下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
最新的記錄之外的所有重復記錄。