从sql中删除重复数据

0 mysql sql mysqli duplicates

我有一个名为"data"的sql数据库和一个表"disk",其中有5列

CREATE TABLE disk( idint(11)NOT NULL, titletext COLLATE utf8_unicode_ci NOT NULL, linktext COLLATE utf8_unicode_ci NOT NULL, magtext COLLATE utf8_unicode_ci NOT NULL, sizevarchar(10)COLLATE utf8_unicode_ci NOT NULL)ENGINE = InnoDB DEFAULT CHARSET = utf8 COLLATE = utf8_unicode_ci;

"mag"列有一些重复.

我想删除mag列相同的完整行.

注意: - 让我们说mag列有1,2,3,4,4,5 ....我想从中删除一个重复的4.意味着我不想完全删除4.一个"4"必须保留.

告诉SQL查询可以做到这一点....在将这个问题标记为重复之前,我必须告诉你我已经看到了类似的问题,但没有一个有效.了解更多信息.

小智 6

尝试以下操作删除具有相同d列的副本并保留一行具有最低id值:

DELETE d1 
FROM  disk d1, disk d2 
WHERE d1.id > d2.id AND 
      d1.d = d2.d;
Run Code Online (Sandbox Code Playgroud)