Lo scopo di questo tutorial è di aiutarti a capire come utilizzare la clausola di eliminazione insieme alla clausola di join per rimuovere i dati contemporaneamente. Se sei nuovo in MySQL, considera i nostri altri tutorial, come join e drop tables tutorial.
Iniziamo.
Uso di base: elimina con interiore
Il primo metodo di eliminazione che discuteremo è come utilizzare la clausola MySQL ELETE all'interno di un'istruzione di join interner per rimuovere i dati dalle righe che corrispondono a un'altra tabella.
La sintassi generale per implementare tale query è mostrata di seguito:
Elimina TBL1, TBL2 da TBL1 interno unito TBL2 su TBL1.col = tbl2.col dove [condizione];Lascia che ti assicuri che è più facile di quanto sembri. Lasciatemi spiegare:
Iniziamo specificando le tabelle da cui vogliamo rimuovere i dati. Le tabelle sono specificate tra la cancellazione e dalla clausola.
Nella seconda parte, specifichiamo la condizione per le righe corrispondenti nelle tabelle impostate. Per esempio:
TBL1.col = tbl2.colInfine, impostiamo la condizione che determina le righe nelle tabelle specificate da eliminare.
Esempio di utilizzo
Vorrei usare un esempio per illustrare come possiamo usare la clausola elimina e il join interno per rimuovere le righe da più tabelle. Considera le domande seguenti:
Creare Schema Society;Una volta che abbiamo tali dati, possiamo illustrare come utilizzare Elimina con il join interno come mostrato nella query seguente:
Elimina la società.utenti, società.Contatti della società.Utenti INTER UNIZZARE CONTATTI SU USER_ID = Home_ID WHERE USER_ID = 3;La query sopra visualizzerà il risultato come mostrato di seguito:
Due righe interessate in 7 ms, il che indica che sono state rimosse due righe.
Elimina con un join a sinistra
Il secondo metodo di eliminazione che discuteremo è usare il join a sinistra. La sintassi generale per questo tipo di eliminazione è come mostrato di seguito:
Elimina TBL1 da TBL1 sinistra unisci TBL2 su TBL1.col = tbl2.Col dove tble.col è null;Per eliminare con un join a sinistra, specifichiamo solo una tabella-non simile al join interno in cui abbiamo specificato due tabelle.
Considera l'intera domanda di seguito:
Usare la società;Una volta eseguite la query sopra, l'utente il cui indirizzo è nullo dopo aver eliminato il join e il risultato di output è mostrato di seguito:
Conclusione
In questo tutorial, abbiamo discusso di come utilizzare MySQL Elimina con le istruzioni di join per eliminare i dati da più tabelle.