sql >> Database >  >> RDS >> Mysql

Welke kolom als eerste in index plaatsen? Hogere of lagere kardinaliteit?

MySQL-zoekopdrachten voor samengestelde indexen moeten plaatsvinden in de volgorde waarin de kolommen binnen de index zijn gedefinieerd. Omdat u wilt dat MySQL onderscheid kan maken tussen records door zo min mogelijk vergelijkingen uit te voeren, terwijl alle andere zaken gelijk blijven, profiteert u het meest van een samengestelde index waarin de kolommen zijn gerangschikt van hoogste naar laagste kardinaliteit.

Dat wil zeggen, ervan uitgaande dat vergelijkingen uiteindelijk moeten worden uitgevoerd met de kolom met de hoogste kardinaliteit om records te kunnen discrimineren, waarom zou je dan dwingen om eerst vergelijkingen te maken met de kolom met de laagste kardinaliteit als dat uiteindelijk misschien niet nodig is?



  1. Kan ik transiënten in de tabel wp_options van mijn WordPress-installatie verwijderen?

  2. TypeError:kan niet ontsnappen aan psycopg2.extensions.Binary to binary

  3. Eerste normaalvorm en voor- en achternaam

  4. Laravel Migration - Zegt onbekende database, maar deze is gemaakt