你能帮助我更快地完成这个查询吗?我的查询是可行的,但速度太慢:'(
我希望从我的表中获取所有行,其中coloumn word
的值不止一次。
我的查询如下:
select * from `t`
where id in (select id from `t` group by word having count(*)>1)
答案 0 :(得分:3)
以下查询应该可以为您提供更准确的结果...索引word
可以提高您的效果:
select t1.*
from new as t1
join (select word from new group by word having count(*) > 1) as t2
on t1.word = t2.word
答案 1 :(得分:0)
select new.* from new
JOIN (select word from new group by word having count(*)>1) AS new1
USING (word)
答案 2 :(得分:0)
添加索引可以加快查询速度(没有关于如何创建表格的详细信息)。
FIXED :好的,弄错了,没有子查询,你可以得到几次但不是所有的行,而你确实需要所有的行。