有没有人知道如何优化下面的查询,因为它需要相当长的时间:
select count(*) from
(select field1
from table
group by field1
having count(distinct field1) <> count(field1)) AS Q1
该查询用于查找列中非唯一值的数量。
答案 0 :(得分:3)
如果您想要非唯一值的数量,请使用:
select count(*)
from (select field1
from table
group by field1
having count(*) > 1
) t
而且,是的,table.field1
上的索引会加快这一速度。
如果您想要这些值,请使用:
select field1
from table
group by field1
having count(*) > 1
答案 1 :(得分:2)