溫馨提示×

oracle sql去重怎樣保留最新

小樊
137
2024-07-26 20:37:10
欄目: 云計算

要在Oracle SQL中去重并保留最新的記錄,您可以使用ROW_NUMBER()函數(shù)和PARTITION BY子句來實(shí)現(xiàn)。以下是一個示例查詢:

SELECT *
FROM (
  SELECT 
    *,
    ROW_NUMBER() OVER (PARTITION BY column_to_check_for_duplicates ORDER BY date_column DESC) AS rn
  FROM your_table
) t
WHERE t.rn = 1

在上面的查詢中,您需要將column_to_check_for_duplicates替換為要檢查重復(fù)的列,date_column替換為包含日期或時間戳的列。該查詢會為每個column_to_check_for_duplicates的值分配一個行號,按照date_column降序排列。然后,我們選擇行號為1的記錄,即每組重復(fù)值中最新的記錄。

希望這可以幫助您解決問題。

0