Решение для ускорения медленный запрос SELECT DISTINCT в Postgres

В основном запрос:

SELECT DISTINCT "my_table"."foo" from "my_table" WHERE...

Делая вид, что я на 100% уверен, что часть запроса DISTINCT является причиной того, что он выполняется медленно, я Я пропустил остальную часть запроса, чтобы избежать путаницы, поскольку меня в первую очередь беспокоит медлительность отдельной части (отличная всегда является источником медленности).

В рассматриваемой таблице 2,5 миллиона строк данных. DISTINCT необходим для целей, не перечисленных здесь (потому что я не хочу получать обратно измененный запрос, а просто общую информацию о том, как ускорить выполнение отдельных запросов в СУБД уровень, , если возможно).

Как я могу заставить DISTINCT работать быстрее (в частности, используя Postgres 9) без изменения SQL (т.е. я не могу изменить этот SQL in, но у меня есть доступ для оптимизации чего-либо на уровне БД)?

29
задан orokusaki 2 June 2013 в 16:38
поделиться