Mysql
 sql >> Base de données >  >> RDS >> Mysql

Clés étrangères et index

Cela dépend des requêtes qui seront les plus fréquentes.

Vous pouvez vous retrouver avec trois index.

  1. Si vous avez ... WHERE products_categories.product_id = XXX , créez un index sur product_id .

  2. Idem pour category_id

  3. Créez un index sur category_id et product_id si vous avez ... WHERE products_categories.category_id = XXX AND products_categories.product_id = YYY

Cependant, en suivant le manuel MySQL , gardez à l'esprit qu'un index sur (category_id, product_id) peut être redondant avec un index sur (category_id) . De plus, un index sur (product_id, category_id) peut être redondant avec un index sur (product_id) . Ainsi, vous pouvez enfin vous retrouver avec deux index (au lieu de trois) couvrant tous vos besoins fréquents en matière de requêtes.