DBMS/MS-SQL
MS-SQL 중복된 행 제거
Aterilio (Jeongmee)
2014. 4. 2. 01:12
1. 작업할 테이블에 seq라는 int 컬럼을 하나 추가
2. 테이블 속성에서 ID 열에 추가한 seq 컬럼을 선택
3. 시작값 1에 증가값 1 세팅
4. 아래 코드 실행 (id를 부여하여 중복된 행 중에서 id가 제일 작은 하나를 남기고 나머지는 지우는 시스템)
delete from /* table name */
where seq/* identity */ not in
(
select seq/* identity */ from
(
select MIN(seq/* identity */) as seq
, /* field list (group by - column) */
, COUNT(*) as cnt
from /* table name */
group by /* field (column) list */
) as A
)
출처는 구글링 + 머릿속