我有一个数据库 my_table [id,first,second,third]
,其中包含很多条目,并且想要删除条目 [first,second,third]<的重复数据
.
这样 first
没有重复,second
没有重复,third
没有重复
每个上的任何重复项都将被删除。
id first second third
1 addy any robert
2 addy kevin steve
3 jack ben adam
这里我将删除first
的重复项,因此删除2 addy kevin steve
最佳答案
假设表名为 T,运行以下查询:
Select T1.id, (select count(T2.id) from T as T2 where (T2.id<T1.id) and (T1.first=T2.first or T1.second=T2.second or T1.third=T2.third)) as u from T as T1
如果 [u] 字段大于 0,则表示您在 [first]、[second] 或 [third] 中有重复出现的数据。
接下来,您需要删除这些行:
Delete from T where id in (...)
关于php - 如何删除重复数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8672222/