У меня есть таблица кликов, которая записывает клики мышью по всему сайту Схема выглядит следующим образом:
![enter image description here](https://i.stack.imgur.com/KEi9F.png)
Для этих данных запущено 3 основных запроса:
- "ВЫБРАТЬ * ГДЕ pageid = xxxx"
- "ВЫБРАТЬ * ГДЕ visitorid = xxx И pageid = xxxx"
- «ВЫБЕРИТЕ посетителя, МИН. (Время) КАК мин. Время ГДЕ pageid = xxxx GROUP BY посетитель»
В будущем я мог бы также использовать maintestid в запросах. Так это будет выглядеть так:
- "ВЫБРАТЬ * ГДЕ maintestid = xxxx"
Итак, я добавил 2 индекса в таблицу для обоих этих запросов вместе с первичным ключом так:
![enter image description here](https://i.stack.imgur.com/UcI7Y.png)
У меня есть 3 вопроса:
Является ли этот первичный ключ полезным, если так? Или я должен сделать это только для столбца идентификаторов?
Полезен ли индекс pageid вообще? Или это будет так же быстро, если все запросы для pageid будут обрабатываться индексом pageid_visid?
Когда в будущем я захочу выполнить поиск через maintestid, нужно ли просто добавить индекс в столбец maintestid или что-то другое?