dados duplicados de exclusão em diferentes ID, e uma retenção de dados duplicados

- a construção da tabela, de inserção de dados de teste

GOTA TABELA SE EXISTE `table1`;
CREATE TABLE table1` `(
` int id` (11) null null PADRÃO,
`name` VARCHAR (255) CHARACTER SET utf8mb4 AGRUPAR utf8mb4_general_ci NULL PADRÃO NULL
) MOTOR = InnoDB CHARACTER SET = utf8mb4 AGRUPAR = utf8mb4_general_ci ROW_FORMAT = dinâmico;

- ----------------------------
- Registros de table1
- ------------- ---------------
INSERIR no `VALORES table1` (1, 'A');
INSERÇÃO EM VALORES `table1` (2, 'B');
INSERÇÃO EM VALORES `table1` (3, 'C');
INSERÇÃO EM VALORES `table1` (4, 'D');
INSERÇÃO EM VALORES `table1` (5, 'E');
INSERÇÃO EM VALORES `table1` (6, 'A');

SET FOREIGN_KEY_CHECKS = 1;

- Todos os dados
SELECT * FROM table1

 

 

- consulta de dados em pacotes, a consulta não tem que duplicado ID dados
do min SELECIONAR (ID) do FROM tabela1 GROUP BY nome

 

 

-执行删除,若提示> 1093 - Você não pode especificar tabela de destino 'table1' para atualização na cláusula FROM
DELETE FROM table1 onde id não em
(SELECT min (id) do grupo table1 pelo nome)

 

 

- utilizem o seguinte sql, consulta jaqueta, o resultado da consulta e
DELETE WHERE ID Não em table1 de
(SELECT * FROM (
a min SELECIONAR (ID) como o FROM tabela1 GROUP BY nome ID) A
)

 

Acho que você gosta

Origin www.cnblogs.com/liyunchuan/p/12593948.html
Recomendado
Clasificación