У меня возникли некоторые проблемы с получением индекса для этого запроса (сгенерированного MicroStrategy):
SELECT a11.method method, sum(a11.call_count) CALLCOUNT
FROM call_facts a11
JOIN dimension a12 ON (a11.user_id = a12.user_id)
JOIN service a13 ON (a11.service_id = a13.service_id)
WHERE (a12.is_fraudulent = 0
AND a12.is_test_account = 0
AND a13.in_directory in ('yes')
AND a11.date > '2011-10-01')
GROUP BY a11.method;
В настоящее время у меня есть индексы на a12.is_fraudulent и a12.is_test_account. Объяснение показывает слияние индексов с использованием этих двух. a11 и a13 хороши с индексами. Какой индекс я могу создать, чтобы немного ускорить этот запрос?
Для справки, a12 имеет около 8 миллионов записей, 7,4 из них соответствуют случаям is_test_account = 0 and is_fraudulent = 0
.