SQL
SPIEGARE e DESCRIVERE
Ricerca…
DESCRIZIONE tablename;
DESCRIBE
e EXPLAIN
sono sinonimi. DESCRIBE
in un tablename restituisce la definizione delle colonne.
DESCRIBE tablename;
Exmple Result:
COLUMN_NAME COLUMN_TYPE IS_NULLABLE COLUMN_KEY COLUMN_DEFAULT EXTRA
id int(11) NO PRI 0 auto_increment
test varchar(255) YES (null)
Qui vedete i nomi delle colonne, seguiti dal tipo di colonna. Mostra se è consentito il null
nella colonna e se la colonna utilizza un indice. viene anche visualizzato il valore predefinito e se la tabella contiene un comportamento speciale come un auto_increment
.
SPIEGARE Seleziona query
Un Explain
di una query di select
mostra come verrà eseguita la query. In questo modo è possibile verificare se la query utilizza un indice o se è possibile ottimizzare la query aggiungendo un indice.
Query di esempio:
explain select * from user join data on user.test = data.fk_user;
Esempio di risultato:
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE user index test test 5 (null) 1 Using where; Using index
1 SIMPLE data ref fk_user fk_user 5 user.test 1 (null)
sul type
si vede se è stato utilizzato un indice. Nella colonna possible_keys
si vede se il piano di esecuzione può scegliere tra diversi indici se nessuno esiste. key
ti dice l'indice usato acutal. key_len
mostra la dimensione in byte per un oggetto indice. Più basso è questo valore, più elementi dell'indice si adattano alla stessa dimensione di memoria e possono essere elaborati più velocemente. rows
mostra il numero previsto di righe che la query deve analizzare, minore è il migliore.