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_idiproduct_idjeś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.