oracle 多個字段去重複

去除郵編番號,地址1,2,3相同的數據:

(select
       t1.pstl_code,
       t1.addr_ln_1,
       t1.addr_ln_2,
       t1.addr_ln_3,
       t1.addr_ln_1_alias,
       t1.addr_ln_2_alias,
       t1.addr_ln_3_alias
        from T_PCSS_PSTL_ADDR_JP t1 where (t1.career_code='0' or t1.career_code is null))
union all
(select
       pstl_code,
       addr_ln_1,
       addr_ln_2,
       addr_ln_3,
       addr_ln_1_alias,
       addr_ln_2_alias,
       addr_ln_3_alias
       from
        (select
           t2.pstl_code as pstl_code,
           t2.addr_ln_1 as addr_ln_1,
           t2.addr_ln_2 as addr_ln_2,
           t2.addr_ln_3 as addr_ln_3,
           t2.addr_ln_1_alias as addr_ln_1_alias,
          t2.addr_ln_2_alias as addr_ln_2_alias,
           t2.addr_ln_3_alias as addr_ln_3_alias,
           row_number()over(partition by (t2.PSTL_CODE || t2.addr_ln_1 || t2.addr_ln_2 || t2.addr_ln_3) order by t2.update_time desc) as rowNumber
         from T_PCSS_PSTL_ADDR_JP t2
         where t2.career_code ='1'
    )
 where rowNumber=1
)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章