sql >> Databasteknik >  >> RDS >> Mysql

Utländska nycklar och index

Det beror på vilka frågor som kommer att vara vanligast.

Du kan sluta med tre index.

  1. Om du har ... WHERE products_categories.product_id = XXX , skapa ett index på product_id .

  2. Samma för category_id

  3. Skapa ett index på båda category_id och product_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.



  1. Effektiv sökning i en intervalltabell

  2. php-array från mysql

  3. Underfråga med LIMIT i Doctrine

  4. Hur visar man data från databasen?