sql >> Base de Datos >  >> RDS >> Mysql

Claves foráneas e índices

Depende de qué consultas serán las más frecuentes.

Puede terminar con tres índices.

  1. Si tiene ... WHERE products_categories.product_id = XXX , cree un índice en product_id .

  2. Lo mismo para category_id

  3. Cree un índice en ambos category_id y product_id si tiene ... WHERE products_categories.category_id = XXX AND products_categories.product_id = YYY

Sin embargo, siguiendo el manual de MySQL , tenga en cuenta que un índice en (category_id, product_id) puede ser redundante con un índice en (category_id) . Además, un índice en (product_id, category_id) puede ser redundante con un índice en (product_id) . Así que finalmente puede terminar con dos índices (en lugar de tres) que cubran todas sus necesidades de consulta frecuentes.