쿼리박스라는 툴 사용하면 select한 값을 insert문으로 얻을 수 있다.
다운로드 >> http://www.querybox.com/download/
1. 쿼리박스 실행
2. 2개 이상 있는 중복 데이터를 조회한다.
1 2 3 4 5 6 7 | SELECT A.컬럼1, A.컬럼2, ... , A.컬럼n FROM ( SELECT 테이블명.* , COUNT(*) AS CNT FROM 테이블명 GROUP BY 컬럼1, 컬럼2, 컬럼3, ... , 컬럼n HAVING COUNT(*)>1 ) A | cs |
3. 쿼리박스를 이용해 insert문을 얻는다.
>> INSERT INTO 테이블명(컬럼1, 컬럼2, ... , 컬럼n) VALUES (데이터1, 데이터2, ... , 데이터n);
4. (insert문으로 추출했으니)중복되는 데이터를 삭제한다. 그전에 select로 확인.
1 2 3 4 5 6 7 8 9 10 11 12 13 | SELECT * FROM 테이블명 WHERE 컬럼1 = '조건1' AND 컬럼2 = '조건2' AND 컬럼3 IN ( SELECT A.컬럼2 FROM ( SELECT 테이블명.* , COUNT(*) AS CNT FROM 테이블명 GROUP BY 컬럼1, 컬럼2, 컬럼3 HAVING COUNT(*)>1 ) A ); | cs |
5. 3에서 얻은 insert문 실행하고 commit;
'SQL' 카테고리의 다른 글
[ERWin] 데이터베이스 읽어서 ERD 뽑기 (0) | 2019.07.11 |
---|---|
[SQL] 시작일~종료일 사이만 나오는 조건 (0) | 2018.08.26 |
[SQL] 2개 이상의 중복된 데이터가 있는지 확인하는 쿼리 (0) | 2017.11.16 |
[Oracle] VARCHAR와 VARCHAR2의 차이점 (0) | 2017.03.18 |
[Oracle] 오라클 SQL문 총정리 (0) | 2017.03.18 |