2014-09-06 66 views
-2
select count(distinct (mobile)) from number_data where value = 'A_HNI'; 

    count(distinct (mobile)) = 5046082 



    select count(mobile) from number_data where value = 'A_HNI'; 

    count(mobile) = 9658150 

存在4612068个重复的手机号码,值='A_HNI'。我想删除重复项并保留原文。该表没有主键也没有索引。我无法分配主键,但索引是可能的。表如下:删除mysql中没有主键的重复项

字段类型空键默认额外

标题| varchar(255)|是| | NULL | |

name | varchar(255)|是| | NULL | |

年龄| varchar(255)|是| | NULL | |

PIN代码| varchar(255)|是| | NULL | |

city | varchar(255)|是| | NULL | |

state | varchar(255)|是| | NULL | |

mobile | varchar(255)|是| | NULL | |

来源| varchar(255)|是| | NULL | |

value | varchar(255)|是| | NULL | |

dnd | varchar(255)|是| | NULL | |

msc | varchar(255)|是| | NULL | |

运营商| varchar(255)|是| | NULL | |

+0

哪你想保留重复吗? – Bohemian 2014-09-06 07:35:58

回答

1

获取从表中的Distinct值,创建一个新表与它然后delete旧表 仅供参考,您可以检查此页面 Remove Duplicate Value

您也可以参考这个堆栈答案enter link description here

+0

我有多个子句的例子,其中value ='A_HNI',其中value ='a',其中value ='b'。所以我必须为每个创建单独的表,然后将它们结合起来? – 2014-09-06 06:01:11