Zusammenfassung: In diesem Tutorial lernen Sie, wie Sie die SQL UPDATE-Anweisung verwenden, um vorhandene Daten in einer Tabelle zu ändern.
SQL UPDATE-Syntax
Die UPDATE
-Anweisung ändert vorhandene Daten in einer oder mehreren Zeilen in einer Tabelle. Im Folgenden wird die Syntax der UPDATE
-Anweisung dargestellt:
1
2
3
4
5
6
7
|
UPDATE table
SET
column1 = new_value1,
Spalte2 = neuer_Wert2,
…
WHERE
condition;
|
Um Daten in einer Tabelle zu aktualisieren, müssen Sie:
- Erstens, geben Sie den Tabellennamen an, den Sie in der
UPDATE
-Klausel ändern wollen. - Zweitens, weisen Sie einen neuen Wert für die Spalte zu, die Sie aktualisieren wollen. Wenn Sie Daten in mehreren Spalten aktualisieren möchten, wird jedes Paar Spalte = Wert durch ein Komma (,) getrennt.
- Drittens geben Sie in der WHERE-Klausel an, welche Zeilen Sie aktualisieren möchten. Die
WHERE
-Klausel ist optional. Wenn Sie dieWHERE
-Klausel weglassen, werden alle Zeilen in der Tabelle aktualisiert.
Die Datenbankmaschine gibt eine Meldung aus, in der die Anzahl der betroffenen Zeilen angegeben wird, nachdem Sie die Anweisung ausgeführt haben.
Beispiele für SQL UPDATE-Anweisungen
Sehen wir uns einige Beispiele für die Verwendung der UPDATE
-Anweisung mit der Tabelle employees
an:
Beispiel für SQL UPDATE einer Spalte
Angenommen, Janet, die die Mitarbeiter-ID 3 hat, heiratet, so dass Sie ihren Nachnamen in der Tabelle employees
ändern müssen.
Der Datensatz von Janet in den Angestellten vor der Aktualisierung lautet wie folgt:
1
2
3
4
5
6
|
SELECT
employeeid, nachname, vorname
FROM
northwind_bk.employees
WHERE
employeeid = 3;
|
Die folgende Anweisung ändert Janets Nachnamen von Levering in Hill:
1
2
3
4
5
|
UPDATE employees
SET
lastname = ‚Hill‘
WHERE
employeeID = 3;
|
Führen Sie die obige SELECT-Anweisung erneut aus, um die Änderung zu überprüfen:
SQL UPDATE multiple columns
Zum Beispiel ist Janet in ein neues Haus gezogen, daher hat sich ihre Adresse geändert. Jetzt müssen Sie sie in der Tabelle employees
mit der folgenden Anweisung ändern:
1
2
3
4
5
6
7
8
|
UPDATE Mitarbeiter
SET
Adresse = ‚1300 Carter St‘,
city = ‚San Jose‘,
postalcode = 95125,
region = ‚CA‘
WHERE
employeeID = 3;
|
SQL UPDATE multiple rows
Die folgende UPDATE
Anweisung erhöht das Gehalt um 2 % für Mitarbeiter, deren Gehalt weniger als 2000 $ beträgt:
1
2
3
4
5
|
UPDATE Mitarbeiter
SET
Gehalt = Gehalt * 1.02
WHERE
salary < 2000;
|
Die Mitarbeiter, deren Gehalt weniger als 2K beträgt, haben die Beförderung erhalten.
SQL UPDATE from SELECT
Die folgende Abfrage wählt Vertriebsmitarbeiter aus, die für mehr als 100 Aufträge verantwortlich waren:
1
2
3
4
5
6
7
8
|
SELECT
employeeid, COUNT(orderid)
FROM
orders
WHERE
shippeddate IS NOT NULL
GROUP BY employeeid
HAVING COUNT(orderid) > 100;
|
Die folgende Abfrage erhöht das Gehalt der besten Verkäufer um 5%. Die IDs der besten Vertriebsmitarbeiter werden durch eine Unterabfrage bereitgestellt.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
UPDATE Mitarbeiter
SET
Gehalt = Gehalt * 1.05
WHERE
employeeid IN (SELECT
employeeid
FROM
(SELECT
employeeid, COUNT(orderid)
FROM
orders
WHERE
shippeddate IS NOT NULL
GROUP BY employeeid
HAVING COUNT(orderid) > 100) bestsalesperson)
|
In diesem Lernprogramm, haben wir Ihnen gezeigt, wie Sie die SQL UPDATE-Anweisung verwenden, um Daten in einer oder mehreren Zeilen einer Tabelle zu ändern.
- War dieses Lernprogramm hilfreich?
- JaNein