Zależy to od tego, które zapytania będą najczęstsze.
Możesz otrzymać trzy indeksy.
-
Jeśli masz
... WHERE products_categories.product_id = XXX
, utwórz indeks naproduct_id
. -
To samo dla
category_id
-
Utwórz indeks na obu
category_id
iproduct_id
jeśli masz... WHERE products_categories.category_id = XXX AND products_categories.product_id = YYY
Jednak postępuj zgodnie z instrukcją MySQL
, pamiętaj, że indeks (category_id, product_id)
może być nadmiarowy z indeksem na (category_id)
. Ponadto indeks (product_id, category_id)
może być nadmiarowy z indeksem na (product_id)
. Możesz więc w końcu otrzymać dwa indeksy (zamiast trzech) pokrywające wszystkie Twoje częste zapytania.