我有一个mysql数据库,有5个字段。有两个关键字段,cfield1和cfield2。如果对于任何两个条目,cfield1的值是相同的,cfield2的值也是相同的,那么我想删除这两个条目中的一个——不管是哪个条目。
如果有三个是相同的,我只想保留1和删除其余的。
我假设首先要对cfield1和cfield2上的db进行排序,但我不确定其余的编码应该是什么。
我有一个mysql数据库,有5个字段。有两个关键字段,cfield1和cfield2。如果对于任何两个条目,cfield1的值是相同的,cfield2的值也是相同的,那么我想删除这两个条目中的一个——不管是哪个条目。
如果有三个是相同的,我只想保留1和删除其余的。
我假设首先要对cfield1和cfield2上的db进行排序,但我不确定其余的编码应该是什么。
3条答案
按热度按时间e4eetjau1#
必须同时使用count(*)和group by:
因此,您将获得记录。如果你想删除,我可以举个例子告诉你:
现在您可以复制所有delete语句并运行它们。
vd8tlhqk2#
在mysql查询中这是什么?我们有这个要求,但是现有的数据库是mysql。
uidvcgyl3#
让我假设你有另一个专栏,比如
col3
--可以区分重复行的。然后你可以做:如果没有这样的列,那么我建议创建一个新表。下面使用了mysql的一个特性,这是一个非常不鼓励使用的特性,但是它应该做你想做的事情: