postgresql COUNT (DISTINCT…) очень медленный

У меня очень простой запрос SQL:

SELECT COUNT(DISTINCT x) FROM table;

В моей таблице около 1,5 миллионов строк. Этот запрос выполняется довольно медленно; это занимает около 7,5 с, по сравнению с

 SELECT COUNT(x) FROM table;

, что занимает около 435 мс. Есть ли способ изменить мой запрос для повышения производительности? Я попытался сгруппировать и сделать регулярный подсчет, а также поставить индекс на х; у обоих одинаковое время выполнения 7.5 с.

140
задан rogerdpack 17 November 2014 в 20:48
поделиться