Es hängt davon ab, welche Abfragen am häufigsten vorkommen.
Am Ende haben Sie möglicherweise drei Indizes.
-
Wenn Sie
... WHERE products_categories.product_id = XXX
haben , erstellen Sie einen Index fürproduct_id
. -
Gleiches gilt für
category_id
-
Erstellen Sie einen Index für beide
category_id
undproduct_id
wenn Sie... WHERE products_categories.category_id = XXX AND products_categories.product_id = YYY
Allerdings nach dem MySQL-Handbuch
, denken Sie daran, dass ein Index auf (category_id, product_id)
kann mit einem Index auf (category_id)
redundant sein . Außerdem ein Index auf (product_id, category_id)
kann mit einem Index auf (product_id)
redundant sein . So können Sie endlich mit zwei Indizes (statt drei) enden, die alle Ihre häufigen Abfrageanforderungen abdecken.