Home >Database >Mysql Tutorial >利用Oracle的row_number() over函数消除重复的记录

利用Oracle的row_number() over函数消除重复的记录

WBOY
WBOYOriginal
2016-06-07 17:00:151304browse

2.select d.id,d.outer_code,row_number() over(partition by outer_code order by outer_code) row_flag from dict_depts_sour

1.select d.id,d.outer_code from  dict_depts_source d order by outer_code(查看重复数据)

查看重复数据

2.select d.id,d.outer_code,row_number() over(partition by outer_code order by outer_code) row_flag from  dict_depts_source d(标识重复数据)

标识重复数据

3.delete from dict_depts_source where id in(
select id from(select d.id,d.outer_code,row_number() over(partition by outer_code order by outer_code) row_flag from  dict_depts_source d)t
where t.row_flag > 1)(删除重复数据)

4.select d.id,d.outer_code,row_number() over(partition by outer_code order by outer_code) row_flag from  dict_depts_source d(检查删除效果)

检查重复数据

linux

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn