SQL ATNAUJINIMO PRISIJUNGTI gali būti naudojamas atnaujinti vieną lentelę naudojant kitą lentelę ir sujungimo sąlygą.
Sintaksė –
UPDATE tablename INNER JOIN tablename ON tablename.columnname = tablename.columnname SET tablenmae.columnnmae = tablenmae.columnname;>
Naudokite kelias lenteles SQL UPDATE su JOIN sakiniu.
Tarkime, kad turime dvi lenteles – Geeks1 ir Geeks2. Norėdami patikrinti lentelės turinį –
SELECT * FROM Geeks1;>
Lentelė – Geeks1
stulpelis1 | stulpelis2 | stulpelis3 |
---|---|---|
1 | vienuolika | PIRMAS |
vienuolika | 12 | ANTRA |
dvidešimt vienas | 13 | TREČIAS |
31 | 14 | KETVIRTAS |
SELECT * FROM Geeks2;>
Lentelė – Geeks2
stulpelis1 | stulpelis2 | stulpelis3 |
---|---|---|
1 | dvidešimt vienas | DU-VIENAS |
vienuolika | 22 | DU-DU |
dvidešimt vienas | 23 | DU TRYS |
31 | 24 | DU-KETURI |
Pavyzdys -
Turime lentelę Geeks2, kurioje yra dvi eilutės, kuriose 1 stulpelis yra 21 ir 31, ir norime atnaujinti lentelės Geeks2 reikšmę į lentelę Geeks1 eilutėms, kuriose 1 stulpelis yra 21 ir 31. Taip pat norime atnaujinti 2 stulpelio reikšmes. ir tik 3 kolona.
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);>
Išvestis –
(2 row(s) affected)>
SELECT * FROM Geeks1;>
Lentelė – Geeks1
stulpelis1 | stulpelis2 | stulpelis3 |
---|---|---|
1 | vienuolika | PIRMAS |
vienuolika | 12 | ANTRA |
dvidešimt vienas | 23 | DU TRYS |
31 | 24 | DU-KETURI |
SELECT * FROM Geeks2;>
Lentelė – Geeks2
stulpelis1 | stulpelis2 | stulpelis3 |
---|---|---|
1 | dvidešimt vienas | DU-VIENAS |
vienuolika | 22 | DU-DU |
dvidešimt vienas | 23 | DU TRYS |
31 | 24 | DU-KETURI |