Come rimuovere le voci da una tabella con MySQL DELETE

MySQL DELETE vi permette di rimuovere voci da una tabella. Il comando serve a rimuovere singole o tutte le righe dalla tabella.

Che cos’è MySQL DELETE?

MySQL è una funzione per tabelle che vi aiuta a strutturare i vostri dati e ad archiviarli in modo chiaro. Ogni tanto è necessario eliminare dei dati per tenere sempre aggiornato il sistema di gestione di database e le voci in esso memorizzate. Il comando del software adatto a questo scopo è MySQL DELETE, una funzione che vi permette di definire con precisione il record di dati da eliminare. Per farlo, dovete indicare i dati interessati, aggiungendo una nota per specificare la tabella in cui effettuare l’eliminazione.

La sintassi di MySQL DELETE

Bastano poche parole per descrivere la sintassi di base di MySQL DELETE. Se state imparando a utilizzare MySQL, ne conoscete già la struttura, analoga a quella di comandi come MySQL CONCAT, MySQL REPLACE, MySQL DATE o MySQL DATEDIFF. Con MySQL DELETE dovete tuttavia fornire due importanti informazioni al sistema. Il comando si presenta così:

DELETE FROM tabella
WHERE condizione;
bash

L’informazione “FROM” serve a indicare al sistema la tabella in cui eliminare il record di dati. “WHERE” permette di specificare la condizione che un record di dati deve rispettare per essere rimosso. Se si tralascia la condizione “WHERE”, viene eliminata l’intera riga.

Esempio con MySQL DELETE

Il modo più semplice per capire il funzionamento di MySQL DELETE è con un esempio pratico. A tal fine, immaginiamo che un’impresa abbia un elenco dei clienti, archiviato in una tabella denominata “Clienti”:

Codice cliente

Nome

Città

Stato

1

Jones

Londra

Regno Unito

2

Rossi

Roma

Italia

3

Bianchi

Milano

Italia

4

Schmitz

Vienna

Austria

5

Verdi

Torino

Italia

Quindi, se desideriamo rimuovere il cliente o la cliente “Jones”, utilizziamo il comando MySQL DELETE. A tal fine, occorre digitare il seguente comando:

DELETE FROM Clienti
WHERE Nome = "Jones";
bash

La riga corrispondente viene quindi rimossa dall’elenco dei clienti.

Come svuotare completamente la tabella con MySQL DELETE

Come accennato in precedenza, potete utilizzare il comando MySQL DELETE anche per eliminare tutte le righe da una tabella, ma senza eliminare la tabella stessa. Il relativo comando per l’esempio qui sopra è il seguente:

DELETE FROM Clienti;
bash

In questo modo vengono rimosse tutte le voci, ma la tabella e la sua struttura restano intatte.

MySQL DELETE LIMIT

Con la clausola “LIMIT” potete limitare il numero di righe da eliminare con il comando MySQL DELETE. A tal fine, occorre indicare prima al sistema le voci da mettere in ordine. La sintassi di base si presenta così:

DELETE FROM tabella
ORDER BY: condizione
LIMIT: numero;
bash

Per un esempio come l’elenco dei clienti sopra menzionato, potreste utilizzare il comando MySQL DELETE con la clausola “LIMIT” nel modo seguente:

DELETE FROM Clienti
ORDER BY Nome
LIMIT 2;
bash

In questo caso il sistema metterebbe tutti i clienti e le clienti in ordine alfabetico in base alla lettera iniziale del cognome, per poi eliminare i primi due.

Un uso alternativo del comando MySQL DELETE con “LIMIT” è il seguente:

DELETE FROM Clienti
WHERE Stato = "Italia"
ORDER BY Nome
LIMIT 2;
bash

In questo caso, tutti i clienti e le clienti in Italia verrebbero messi in ordine alfabetico e, quindi, le prime due voci verrebbero eliminate.

Per offrirti una migliore esperienza di navigazione online questo sito web usa dei cookie, propri e di terze parti. Continuando a navigare sul sito acconsenti all’utilizzo dei cookie. Scopri di più sull’uso dei cookie e sulla possibilità di modificarne le impostazioni o negare il consenso.