sql删除同一字段重复内容,保留一条

比如像这样,title重复了,我想实现当title 有重复的时候,删除重复的,只保留一条id最小的

delete from table where id not in
(select min(id) from table group by title)
删之前用select查看确认一下追问

报错:SQL Error(1093):you can't specify target table "news" for uddate in from clause

追答

delete from table where id not in
(select id from (select min(id) as id from table group by title) as a)

温馨提示:内容为网友见解,仅供参考
第1个回答  2012-09-02
delete from table where id in(select id from table a where a.id<>min(id) group by a.title having count(*)>1)。

不知道能行不,你说什么数据库啊。
你执行下,看看,说一下结果追问

php 用的mysql数据库啊 报错:SQL Error(1111):Invalid use of group function

本回答被网友采纳
第2个回答  2012-09-02
有相关的sql语句可以办到,具体的语句我忘记了 很久没有动数据库了追问

新手一个,简单的还会,一复杂就乱了,上网找了好些,但都不顶用

相似回答