Eu tenho uma consulta SQL muito simples:
SELECT COUNT(DISTINCT x) FROM table;
Minha tabela possui cerca de 1,5 milhão de linhas. Esta consulta está sendo executada bem devagar; leva cerca de 7,5s, em comparação com
SELECT COUNT(x) FROM table;
o que leva cerca de 435ms. Existe alguma maneira de alterar minha consulta para melhorar o desempenho? Tentei agrupar e fazer uma contagem regular, além de colocar um índice em x; ambos têm o mesmo tempo de execução 7.5s.
\d
saída psql
é boa) e especifique a coluna com a qual você está com problemas. Seria bom ver as EXPLAIN ANALYZE
duas consultas.