sql >> Database >  >> RDS >> Mysql

Meerdere en enkele indexen

Ja, ten minste één geval is aanzienlijk langzamer. Als u alleen de volgende index definieert:

ALTER TABLE ... ADD INDEX (a, b);

... dan de query SELECT * FROM ... WHERE B = 1; zal die index niet gebruiken.

Wanneer u een index maakt met een samengestelde sleutel, is de volgorde van de kolommen van de sleutel belangrijk. Het wordt aanbevolen om te proberen de kolommen in de sleutel te ordenen om de selectiviteit te vergroten, met de meest selectieve kolommen aan de meest linkse van de sleutel. Als u dit niet doet en een niet-selectieve kolom als eerste deel van de sleutel plaatst, loopt u het risico de index helemaal niet te gebruiken. (Bron:Tips voor het optimaliseren van de samengestelde SQL Server-index )



  1. Maak een MySQL-opgeslagen procedure met behulp van JPA Hibernate

  2. Hoe verticale gegevens omzetten in horizontale gegevens met SQL?

  3. Leer hoe u omgaat met uitzonderingen in PL/SQL

  4. SQL Server-sortering wijzigen in hoofdlettergevoelig van hoofdlettergevoelig?