1 SQL脚本如下所示
CREATE TABLE `student` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`name` varchar(50) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4;
INSERT INTO `student` VALUES ('1', '张三');
INSERT INTO `student` VALUES ('2', '李四');
INSERT INTO `student` VALUES ('3', '张三');
2 表中数据
3 删除重复数据
3.1 第一种方式,使用group by
DELETE FROM student
WHERE id NOT IN (
SELECT id
FROM
(
SELECT
MIN(id) id
FROM
student
GROUP BY
`name`
) cc
);
3.2 第二种使用连接
DELETE a
FROM
student a,
student b
WHERE
a.id > b.id
AND a.`name` = b.`name`;