Det beror på vilka frågor som kommer att vara vanligast.
Du kan sluta med tre index.
-
Om du har
... WHERE products_categories.product_id = XXX, skapa ett index påproduct_id. -
Samma för
category_id -
Skapa ett index på båda
category_idochproduct_idom du har... WHERE products_categories.category_id = XXX AND products_categories.product_id = YYY
Men följ MySQL-manualen
, kom ihåg att ett index på (category_id, product_id) kan vara överflödig med ett index på (category_id) . Dessutom ett index på (product_id, category_id) kan vara överflödig med ett index på (product_id) . Så du kan slutligen sluta med två index (istället för tre) som täcker alla dina vanliga frågebehov.