溫馨提示×

oracle sql去重如何使用排名函數(shù)

小樊
98
2024-07-26 19:34:11
欄目: 云計算

要在Oracle SQL中使用排名函數(shù)去重,可以結合使用ROW_NUMBER()函數(shù)和PARTITION BY子句。

例如,假設有一個名為table1的表,其中包含重復的數(shù)據。要根據特定的列去除重復行,可以使用以下查詢:

SELECT *
FROM (
    SELECT 
        *,
        ROW_NUMBER() OVER (PARTITION BY column1 ORDER BY column2) AS rn
    FROM table1
) t
WHERE rn = 1;

在上面的查詢中,ROW_NUMBER()函數(shù)將為每行分配一個唯一的序號,根據PARTITION BY子句指定的列進行分組,并按照ORDER BY子句指定的列排序。最后,篩選出序號為1的行,即保留每個分組中的第一行,從而去除重復行。

0