Rezumat: în acest tutorial, veți învăța cum să utilizați instrucțiunea SQL UPDATE pentru a modifica datele existente într-un tabel.
Sintaxa SQL UPDATE
Instrucțiunea UPDATE
modifică datele existente în unul sau mai multe rânduri dintr-un tabel. În cele ce urmează este ilustrată sintaxa instrucțiunii UPDATE
:
1
2
3
4
5
6
7
|
UPDATE table
SET
column1 = new_value1,
column2 = new_value2,
…
WHERE
condiție;
|
Pentru a actualiza datele dintr-un tabel, trebuie să:
- În primul rând, specificați numele tabelului ale cărui date doriți să le modificați în clauza
UPDATE
. - În al doilea rând, atribuiți o nouă valoare pentru coloana pe care doriți să o actualizați. În cazul în care doriți să actualizați datele din mai multe coloane, fiecare pereche coloană = valoare este separată de o virgulă (,).
- În al treilea rând, specificați ce rânduri doriți să actualizați în clauza WHERE. Clauza
WHERE
este opțională. Dacă omiteți clauzaWHERE
, toate rândurile din tabel vor fi actualizate.
Motorul bazei de date emite un mesaj care specifică numărul de rânduri afectate după ce ați executat instrucțiunea.
Exemple de declarații SQL UPDATE
Să vedem câteva exemple de utilizare a declarației UPDATE
cu tabelul employees
:
Exemplu de declarații SQL UPDATE pe o coloană
Să presupunem că Janet, care are id-ul de angajat 3, se căsătorește, astfel încât trebuie să-i schimbați numele de familie în tabelul employees
.
Înregistrarea lui Janet în angajații înainte de actualizare este următoarea:
1
2
3
4
5
6
|
SELECT
employeeid, lastname, firstname
FROM
northwind_bk.employees
WHERE
employeeid = 3;
|
Următoarea instrucțiune schimbă numele de familie al lui Janet din Levering în Hill:
1
2
3
4
5
|
UPDATE angajați
SET
nume de familie = ‘Hill’
WHERE
employeeID = 3;
|
Executați din nou instrucțiunea SELECT de mai sus pentru a verifica modificarea:
SQL UPDATE multiple columns
De exemplu, Janet s-a mutat într-o casă nouă, prin urmare, adresa ei s-a schimbat. Acum, trebuie să o modificați în tabelul employees
utilizând următoarea instrucțiune:
1
2
3
4
5
6
7
8
|
UPDATE angajați
SET
adresa
= ‘1300 Carter St’,
city = ‘San Jose’,
postalcode = 95125,
region = ‘CA’
WHERE
employeeID = 3;
|
SQL UPDATE mai multe rânduri
Următoarea instrucțiune UPDATE
mărește salariul cu 2% pentru angajații al căror salariu este mai mic de 2000$:
1
2
3
4
5
|
UPDATE angajați
SET
salariu = salariu * 1.02
WHERE
salary < 2000;
|
Angajații al căror salariu este mai mic de 2K au primit promovarea.
SQL UPDATE from SELECT
Următoarea interogare selectează persoana de vânzări care s-a ocupat de mai mult de 100 de comenzi:
1
2
3
4
5
6
7
8
|
SELECT
employeeid, COUNT(orderid)
FROM
comenzi
WHERE
shippeddate IS NOT NULL
GROUP BY employeeid
HAVING COUNT(orderid) > 100;
|
Următoarea interogare mărește salariul celor mai buni vânzători cu 5%. ID-urile celor mai bune persoane de vânzare sunt furnizate de o subinterogare.
1
2
3
4
5
6
7
8
9
10
11
12
13
13
14
15
|
UPDATE angajați
SET
salariu = salariu * 1.05
WHERE
employeeid IN (SELECT
employeeid
FROM
(SELECT
employeeid, COUNT(orderid)
FROM
comenzi
WHERE
shippeddate IS NOT NULL
GROUP BY employeeid
HAVING COUNT(orderid) > 100) bestsalesperson)
|
În acest tutorial, v-am arătat cum să utilizați instrucțiunea SQL UPDATE pentru a modifica datele din unul sau mai multe rânduri dintr-un tabel.
- A fost util acest tutorial?
- DaNu
.