sql >> Database teknologi >  >> RDS >> Mysql

Gør indeks på Varchar præstationsforskel?

Nej, det gør det ikke.
Hvis optimeringsværktøjet beslutter sig for at bruge indekset, vil forespørgslen køre hurtigere. INSERT s/UPDATE s/DELETE s på det bord vil være langsommere, men sandsynligvis ikke nok til at bemærke det.

Vær opmærksom på, at du bruger:

LIKE '%whatever%'

... vil ikke bruge et indeks, men følgende vil:

LIKE 'whatever%'

Nøglen er jokertegn på venstre side af strengen, hvilket betyder, at et indeks på kolonnen ikke kan bruges.

Ved også, at MySQL begrænser mængden af ​​plads, der er afsat til indekser - de kan være op til 1000 bytes lange for MyISAM (767 bytes for InnoDB) tabeller.



  1. Hvordan ændres sammenstilling af alle rækker fra latin1_swedish_ci til utf8_unicode_ci?

  2. Hvordan opdaterer jeg automatisk et tidsstempel i PostgreSQL

  3. MySQL 5.7.12-import kan ikke oprette en JSON-værdi fra en streng med CHARACTER SET 'binary'

  4. Adgang nægtet oprettelse af den første database – hvordan giver jeg den rigtige adgang?