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_id
ochproduct_id
om 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.