다른 ID의 삭제 중복 데이터 및 중복 데이터 보존

- 테스트 데이터 삽입 테이블의 건설,

DROP TABLE IF는`table1` 존재;
TABLE`table1` (CREATE
`id` INT (11) NULL의 DEFAULT의 NULL을
`name` VARCHAR (255) 문자 세트 utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL
) ENGINE = 이노 캐릭터 SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = 동적;

- ----------------------------
- 표 1의 기록
- ------------- ---------------
INSERT INTO`table1`의 VALUES (1, 'A');
INSERT INTO`table1`의 VALUES (2 ', B');
INSERT INTO`table1`의 VALUES (3 ', C');
INSERT INTO`table1` 값을 (14 ', D');
INSERT INTO`table1`의 VALUES (5, 'E');
INSERT INTO`table1`의 VALUES (6, 'A');

SET FOREIGN_KEY_CHECKS = 1;

- 모든 데이터는
표 1 SELECT * FROM

 

 

- 패킷 데이터 쿼리, 쿼리가 중복 된 데이터 ID에없는
이름으로 표에서 그룹을 SELECT 분 (ID)를

 

 

-执行删除,若提示> 1093 - 당신은 FROM 절에서 업데이트 대상 테이블 '표'를 지정할 수 없습니다
표는 어디에서 삭제 ID NOT IN
(SELECT 분 이름으로 표 그룹에서 (ID))

 

 

- 다음의 SQL 재킷 질의, 질의 결과 등을 사용
삭제 WHERE ID 없음 표 1에서의
((SELECT *
이름 ID로 SELECT 분 (ID) 표 그룹에서 같은)
)

 

추천

출처www.cnblogs.com/liyunchuan/p/12593948.html