-- 테스트 테이블 생성
create table test_table(idx int not null identity(1,1), bbg_code varchar(10))
-- 테스트 자료 입력
insert into test_table Values ( 'a')
insert into test_table Values ( 'a')
insert into test_table Values ( 'a')
insert into test_table Values ( 'a')
insert into test_table Values ( 'b')
insert into test_table Values ( 'b')
insert into test_table Values ( 'b')
insert into test_table Values ( 'c')
insert into test_table Values ( 'c')
insert into test_table Values ( 'd')
insert into test_table Values ( 'e')
insert into test_table Values ( 'f')
-- 중복되는 자료중 임의의 한개만 남기고 삭제
DELETE
FROM
test_table
WHERE IDX IN ( SELECT AA.IDX as IDX [출처] 중복되는 데이터중 임의의 한개(여기선 idx 최대값)만 남기고 삭제|작성자 필립박
FROM test_table AA,
(SELECT Max(IDX) AS IDX, bbg_code as bbg_code , COUNT
(*) AS CNT
FROM test_table
GROUP BY bbg_code HAVING COUNT(*) >1) DD
WHERE
AA.bbg_code=DD.bbg_code and
AA.IDX!=DD.IDX
)
'데이터베이스 > SQL Server' 카테고리의 다른 글
제 1강 : Update 되는 Top ~ Order by 뷰 및 CTE를 이용한 접속로그 테이블 관리 (0) | 2008.04.29 |
---|---|
해당일자의 주차 구하기 (0) | 2008.04.29 |
분산 쿼리를 하기 위한 Linked Server 구성하기 (0) | 2008.04.29 |
주민번호 체크 저장 프로시저 (0) | 2008.04.29 |
E-Mail 주소 검증 함수 (0) | 2008.04.29 |