在A,B和C列中,我计算的是将表按A,B分组的不同的C。 下面是示例表:
,输出应类似于:
我正在使用wamp服务器进行测试的本地计算机中运行phpMyAdmin。我的数据库有500000行。我使用以下查询,并且花了超过180秒的时间来运行查询。
select A, B, count(distinct C)
from table
group by A, B
order by count(DISTINCT C) desc
是否存在可以用于相同结果的最佳查询,这将减少我的运行时间?还是因为表中有大量数据?
答案 0 :(得分:1)
为了提高性能,您需要在表上添加(A, B, C)
中的Composite Index。
ALTER TABLE your_table_name
ADD INDEX(A,B,C);