Ваша производительность, вероятно, улучшится с помощью составного индекса для кода страны и даты покупки, и если вы никогда напрямую не запросите дату покупки без передачи кода страны, то вы, вероятно, можете удалить индекс для кода страны и заменить его составным.
Следующий запрос может работать лучше, но не обязательно так, как всегда, от шаблонов ваших данных.
SELECT countrycode,
SUM(in_month) AS this_month,
COUNT(*) AS all_time
FROM (
SELECT countrycode,
buyedDate >= DATE_SUB(CURDATE(), INTERVAL 1 MONTH) AS in_month
FROM mytable
) AS summary
GROUP BY countrycode;