질의작성

중복데이터 제거 방법

by Prototype posted Jul 01, 2009
큐브리드를 사용시, 경우에 따라 중복된 데이터를 한건만 남기고 지워야 하는 상황이 발생 할 수 있습니다.

이때, 조건에 맞게 데이터 하나만 쿼리를 한 후, NOT IN 조건절을 사용하는 쿼리를 작성하면 쉽게 데이터를 삭제 할 수 있습니다.

delete from tab1 where rownum not in (select min(rownum) from tab1 group by col1)

위의 쿼리의 경우, tab1 테이블의 col1 컬럼의 값 기반으로 중복된 값 중 값 하나씩만을 쿼리 한 후, 그 값을 제외하고(NOT IN) 나머지를 삭제하는 쿼리입니다.

위의 쿼리에서 not in 의 조건을 적절히 변경하면 원하는 ROW만 남기고, 나머지 데이터를 삭제 할 수 있습니다.


Articles

5 6 7 8 9 10 11 12 13 14