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

Comprensione di MySQL key_len in Explain Statement

key_len specifica il numero di byte che MySQL utilizza dalla chiave.
Gli indici vengono sempre utilizzati da sinistra a destra. cioè viene utilizzata solo la parte più a sinistra.

La lunghezza dei tuoi campi è la seguente:

1 byte             `Type` char(1) NOT NULL,
1 byte             tn char(1) NOT NULL DEFAULT 'l',
1 byte             act tinyint(1) unsigned NOT NULL DEFAULT '0',
3 bytes            flA mediumint(6) unsigned NOT NULL DEFAULT '0',
1+1+1+3 = 6 bytes  KEY `Index` (`Type`, `tn`, `act`, `flA`)
 key usage always starts here ---^^^^^

Se key_len =3 allora sta usando type+tn+act .
Nota che Key_len =4 è impossibile in questa configurazione.