Може да искате да добавите допълнителен индекс, за да помогнете на фазата на броене.
ALTER TABLE keywords ADD INDEX ckp_index (collection_id,keyword,pmid);
Ако вече имате съставен индекс само с идентификатор на колекция и ключова дума, оптимизаторът на заявки все пак ще включва търсене на полето pmid от таблицата.
С добавянето на този нов индекс това ще премахне всички сканирания на таблицата и ще извърши само сканиране на индекси.
Това ще ускори count(distinct pmid) част от заявката.
Опитайте !!!