Медленный запрос в MySQL с группировкой

Есть такая таблица с 14 млн. записей:

CREATE TABLE `events` (
  `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
  `person` MEDIUMINT(8) UNSIGNED DEFAULT NULL,
  `date` INTEGER(10) UNSIGNED DEFAULT NULL,
  PRIMARY KEY USING BTREE (`id`),
  KEY `events_person` USING BTREE (`person`),
  KEY `events_date` USING BTREE (`date`)
) ENGINE=InnoDB
AUTO_INCREMENT=14017398 ROW_FORMAT=DYNAMIC CHARACTER SET 'latin1' COLLATE 'latin1_swedish_ci'

Настроены индексы, запросы с условиями WHERE с полями из индекса отрабатываются очень быстро.

При выполнение запроса с группировкой по полю с индексом выполнение идет очень долго:

SELECT person, MAX(`date`) FROM events
GROUP BY person

Как можно победить?


Ответы (0 шт):