SELECT id,title FROM a WHERE title IN ( SELECT title FROM a GROUP BY title HAVING COUNT(title)>1) ORDER BY title查询a表中title有重复的数据 title为VARCHAR类型  查询出数据1000多条 需要16秒  很慢。 不管在后面加不加上LIMIT X   都是很慢的 哪怕只取LIMIT 10   求优化!

解决方案 »

  1.   

    假设ID唯一,在ID、title上建立复合索引
    SELECT id,title FROM a WHERE not exists(select 1 FROM a WHERE
    a.title=title and a.id<id)
      

  2.   

    版主大哥。
    SELECT id,title FROM a WHERE EXISTS (SELECT 1 FROM a temp WHERE temp.title = a.title
    AND temp.id<> a.id) ORDER BY title
    我这样写好了  请问如何? 大概3秒。尚可接受
      

  3.   

    我的语句是取TITLE相同时,ID最大的记录