[MySQL] 중복 데이타 삭제하기

https://steemit.com/kr/@yjiq150/mysql

DELETEFROM revenue WHERE id IN ( SELECT id FROM (SELECT id FROM revenue GROUP BY collect_date, currency HAVING count(*) > 1) temp_table )
  • GROUP BY 쿼리를 이용하여 데이터를 aggregate 한 후에 중복된 데이터가 하나 이상 존재하는 경우를 찾는다.
  • 찾아진 데이터의 id 값을 temp_table 이라는 임시테이블로 명명한다.
  • temp_table로부터 id 값을 다시 SELECT해서 DELETE한다.

이 방법에서는 SELECT한 데이터를 temp_table이라는 임시테이블로 지정한 후에 temp_table로 부터 SELECT한 id값으로 reveue 테이블에 있는 데이터를 DELETE 했다. 즉, 같은 테이블에 대한 DELETE 작업이 아니기 때문에 제약을 피할 수 있게 된다.

0
0
이 글을 페이스북으로 퍼가기 이 글을 트위터로 퍼가기 이 글을 카카오스토리로 퍼가기 이 글을 밴드로 퍼가기
captcha
자동등록방지 숫자입력

웹개발

번호 제목 글쓴이 날짜 조회수
122 [Dart] Dart 문법 정리 최고관리자 09-09 2,217
121 [Flutter] absorbpointer-and-ignorepointer 최고관리자 09-08 1,573
120 [PHP] 타입선언 최고관리자 08-22 1,431
119 [PHP] error_level 셋팅과 실제 출력 최고관리자 08-21 1,521
118 [MySql] 타입지정시 괄호안의 숫자 최고관리자 08-18 1,578
117 [MySql] MySQL 최적의 데이터 타입 선택 방법 최고관리자 08-18 1,249
116 [MySql] 인덱스 조회시 주의 사항 최고관리자 08-18 1,285
115 [MySql] NOT NULL과 DEFAULT 를 동시에 쓸 필요가 있는가? 최고관리자 08-18 1,316
114 [Flutter] Row and Column 최고관리자 08-16 1,233
113 [Flutter] Linting 설정으로, 흔하게 실수할 수 있는 것을 build 전 방지하기. 최고관리자 08-16 1,321
112 [PHP] PHP 7.x PHP 8.x에서의 조건문 최고관리자 07-26 1,277
111 [JS] Webpack을 쓰는 이유 최고관리자 07-24 1,393
110 [Vue] Vue Router 최고관리자 07-22 1,271
109 [Vue] Vue.js 기본 원리 최고관리자 07-22 1,789
108 [MySql] 쿼리 결과를 합치는 union vs union all의 차이 최고관리자 07-10 1,298
107 [Vue] 일반적인 프로젝트의 구조에 대해 알아보자. 최고관리자 06-18 1,383
106 [JSP] vue등의 스크립트 분석을 위해 %태그 정도는 알자. 최고관리자 06-18 1,504
105 [MySql] 페이징(paging) 쿼리시 전체개수를 한번에 처리하는 방법 최고관리자 06-14 2,089
104 [MySql] Join vs Sub Query 비교 최고관리자 06-05 1,514
103 [SQL] SQL Join에 대한 이해 최고관리자 06-05 1,400