sql >> Databasteknik >  >> RDS >> Mysql

Vilken kolumn ska placeras först i index? Högre eller lägre kardinalitet?

MySQL sammansatta indexuppslagningar måste ske i den ordning som kolumnerna definieras i indexet. Eftersom du vill att MySQL ska kunna särskilja poster genom att utföra så få jämförelser som möjligt, med allt annat lika kommer du att ha mest nytta av ett sammansatt index där kolumnerna är ordnade från högsta till lägsta kardinalitet.

Det vill säga, förutsatt att jämförelser så småningom måste utföras mot kolumnen med högsta kardinalitet för att särskilja poster, varför tvinga fram jämförelser att göras först mot kolumnen med lägsta kardinalitet när det i slutändan kan vara onödigt?



  1. Klusterverifieringsverktyg som genererar ett stort antal xml-filer på filsystemet "/u01".

  2. Hur använder man PostgreSQL:s INSERT...ON CONFLICT (UPSERT)-funktion med flask_sqlalchemy?

  3. Mysql:Ställ in kolumnteckenuppsättning

  4. Någon som någonsin använt PayPals webbplatsbetalningsstandard med SESSION-variabler?