Mysql
 sql >> Database >  >> RDS >> Mysql

Chiavi esterne e indici

Dipende da quali query saranno le più frequenti.

Potresti ritrovarti con tre indici.

  1. Se hai ... WHERE products_categories.product_id = XXX , crea un indice su product_id .

  2. Lo stesso per category_id

  3. Crea un indice su entrambi category_id e product_id se hai ... WHERE products_categories.category_id = XXX AND products_categories.product_id = YYY

Tuttavia, seguendo il manuale MySQL , tieni presente che un indice su (category_id, product_id) potrebbe essere ridondante con un indice su (category_id) . Inoltre, un indice su (product_id, category_id) potrebbe essere ridondante con un indice su (product_id) . Quindi potresti finalmente ritrovarti con due indici (anziché tre) che coprono tutte le tue frequenti esigenze di query.