1. 程式人生 > >[轉抄]oracle單表查詢去重(效率比較高的一種方式)

[轉抄]oracle單表查詢去重(效率比較高的一種方式)

sel select 單表查詢 效率 查詢 rownum 說明 acl 分組

 1 select 
 2     *    
 3 from
 4      (
 5         select
 6              a.*, rownum r_n 
 7         from 
 8             A_TEST a
 9      ) tt     
10 where
11     tt.r_n in 
12     (
13         select 
14             min(rownum) 
15         from 
16             A_TEST t 
17         group by name  //name為去重字段
18 )

查詢原理是:

  將表按要去重的字段分組,查詢出分組後每組的最小行號,以此作為篩選條件,從表中取出這些記錄。

(說明:此方法為網絡獲取,並沒有對大量數據進行測試,不知效率如何)

[轉抄]oracle單表查詢去重(效率比較高的一種方式)