Nelle ultime versioni di MySQL, puoi eseguire un aggiornamento a tavola incrociata, noto anche come aggiornamento della tabella di correlazione in cui è possibile unirti a due o più tabelle. Usando MySQL join (interno e sinistra) e query di aggiornamento, possiamo eseguire un aggiornamento incrociato in passaggi molto semplici.
Questo tutorial ti farà passare su come eseguire gli aggiornamenti a tavola incrociata MySQL utilizzando i comandi nativi mysql.
Sintassi di base
La sintassi generale per una query di join ad aggiornamento MySQL di base è:
Aggiorna DB.Tabella 1, DB.Tavolo 2,Abbattiamo la query sopra in parti più piccole in modo da poterlo capire meglio.
Iniziamo definendo il tavolo principale. In questo caso, (db.Tabella 1) seguito dalla tabella che vogliamo partecipare utilizzando l'istruzione Aggiornamento, in questo caso, DB.Tavolo 2.
NOTA: È importante specificare almeno una tabella dopo l'istruzione di aggiornamento; Altrimenti, le righe nella tabella non si aggiorneranno dopo la query.
Nella seconda parte della query, specifichiamo il tipo specifico di join che vogliamo eseguire, i.e., Uni interno o sinistro e un predicato. Imposta sempre la query di join immediatamente dopo la query di aggiornamento.
Un predicato di join è una condizione di join specifica che valuta un valore booleano.
Nella parte seguente, abbiamo impostato nuovi valori sulle colonne di DB.Tabella 1 e db.Tavolo 2.
Infine, impostiamo una condizione usando la clausola Where, che aiuta a limitare le righe che subiscono l'aggiornamento.
Esempio di utilizzo
Supponiamo di avere due tabelle, chiamate TB1 e TB2; Prendi in considerazione una query di seguito per creare tabelle e aggiungere dati.
Creare database se non esiste sample_db;Nelle tabelle create usando la query sopra, possiamo eseguire una query di aggiornamento utilizzando l'istruzione di join interner poiché le tabelle sono collegate su Col2.
Considera la query di seguito:
Usa sample_db;Dal momento che vogliamo aggiornare i dati nella seconda tabella (COL3) in cui otteniamo i valori delle colonne e moltiplichiamo per 5, nell'esempio sopra, eliminiamo la condizione dove vogliamo aggiornare tutti i record nella tabella specificata.
Puoi confermare questo usando la query seleziona come mostrato di seguito:
Seleziona * da campione_db.tb2;L'output come mostrato di seguito:
mysql> seleziona * da sample_db.tb2;Conclusione
In questo rapido tutorial, abbiamo discusso di come utilizzare la query di join update MySQL che ti consente di combinare le tabelle e l'aggiornamento dei valori di conseguenza.
Per saperne di più su come espandere questa funzione, considera le risorse fornite di seguito:
https: // dev.mysql.com/doc/refman/8.0/en/aggiornamento.html
https: // dev.mysql.com/doc/refman/8.0/en/join.html