SQL UPDATE JOIN ar putea fi folosit pentru a actualiza un tabel folosind un alt tabel și condiția de alăturare.
Sintaxă –
UPDATE tablename INNER JOIN tablename ON tablename.columnname = tablename.columnname SET tablenmae.columnnmae = tablenmae.columnname;>
Utilizați mai multe tabele în instrucțiunea SQL UPDATE cu JOIN.
Să presupunem că avem două tabele – Geeks1 și Geeks2. Pentru a verifica conținutul din tabel -
SELECT * FROM Geeks1;>
Masa - Geeks1
| col1 | col2 | col3 |
|---|---|---|
| 1 | unsprezece | PRIMUL |
| unsprezece | 12 | AL DOILEA |
| douăzeci și unu | 13 | AL TREILEA |
| 31 | 14 | AL PATRULEA |
SELECT * FROM Geeks2;>
Masa - Geeks2
| col1 | col2 | col3 |
|---|---|---|
| 1 | douăzeci și unu | DOI UNU |
| unsprezece | 22 | DOI-DOI |
| douăzeci și unu | 23 | DOI TREI |
| 31 | 24 | DOI-PATRU |
Exemplu –
Avem tabelul Geeks2 care are două rânduri în care Col 1 este 21 și 31 și dorim să actualizăm valoarea din tabelul Geeks2 la tabelul Geeks1 pentru rândurile în care Col 1 este 21 și 31. De asemenea, dorim să actualizăm valorile Col 2 și numai Col 3.
UPDATE Geeks1 SET col2 = Geeks2.col2, col3 = Geeks2.col3 FROM Geeks1 INNER JOIN Geeks2 ON Geeks1.col1 = Geeks2.col1 WHERE Geeks1.col1 IN (21, 31);>
Ieșire -
(2 row(s) affected)>
SELECT * FROM Geeks1;>
Masa - Geeks1
| col1 | col2 | col3 |
|---|---|---|
| 1 | unsprezece | PRIMUL |
| unsprezece | 12 | AL DOILEA |
| douăzeci și unu | 23 | DOI TREI |
| 31 | 24 | DOI-PATRU |
SELECT * FROM Geeks2;>
Masa - Geeks2
| col1 | col2 | col3 |
|---|---|---|
| 1 | douăzeci și unu | DOI UNU |
| unsprezece | 22 | DOI-DOI |
| douăzeci și unu | 23 | DOI TREI |
| 31 | 24 | DOI-PATRU |