Heim > Datenbank > MySQL-Tutorial > Wie aktualisiere ich eine SQL Server-Tabelle mithilfe eines Joins?

Wie aktualisiere ich eine SQL Server-Tabelle mithilfe eines Joins?

DDD
Freigeben: 2025-01-23 09:42:10
Original
253 Leute haben es durchsucht

How to Update a SQL Server Table Using a Join?

Aktualisieren von SQL Server-Tabellen über Joins: Eine umfassende Anleitung

Diese Anleitung beschreibt, wie Sie eine SQL Server-Tabelle mithilfe von Daten aus einer anderen Tabelle über einen Join aktualisieren. Wir gehen den Prozess Schritt für Schritt durch und veranschaulichen ihn anhand praktischer Beispiele.

1. Definieren der Tabellenbeziehung:

Identifizieren Sie zunächst klar die Beziehung zwischen den beteiligten Tabellen. Betrachten Sie beispielsweise die Tabellen „sale“ und „ud“. Angenommen, „sale.assid“ ist ein Fremdschlüssel, der auf „ud.assid“ verweist. Dies definiert die Verbindung zwischen den beiden Tabellen.

2. Erstellen der UPDATE-Abfrage:

Der Kern des Aktualisierungsvorgangs liegt in der UPDATE-Anweisung. Diese Anweisung zielt auf die zu ändernde Tabelle ab, gefolgt von einer JOIN-Klausel, um die Verbindung mit der Quelltabelle herzustellen.

3. Angabe der Aktualisierungswerte:

Die SET-Klausel bestimmt, welche Spalte(n) aktualisiert werden sollen und welche neuen Werte aus der verknüpften Tabelle stammen. Beispielsweise aktualisiert SET u.assid = s.assid „ud.assid“ mit dem entsprechenden Wert von „sale.assid“.

4. Definieren der Join-Bedingung:

Die JOIN-Klausel verwendet das Schlüsselwort ON, um die Join-Bedingung anzugeben. In unserem Beispiel verknüpft ON u.id = s.udid Zeilen, in denen „ud.id“ mit „sale.udid“ übereinstimmt.

5. Illustrative Abfrage:

Hier ist eine Beispielabfrage, die den Prozess demonstriert:

<code class="language-sql">UPDATE ud u
SET u.assid = s.assid
FROM ud u
INNER JOIN sale s ON u.id = s.udid;</code>
Nach dem Login kopieren

Diese Abfrage aktualisiert „ud.assid“ für jede Zeile, in der eine passende „udid“ in der Tabelle „sale“ vorhanden ist.

Alternativer Ansatz: Unterabfragen:

SQL Server unterstützt auch die Verwendung von Unterabfragen innerhalb der SET-Klausel, um Aktualisierungswerte abzuleiten. Dies bietet eine alternative Syntax:

<code class="language-sql">UPDATE ud u
SET u.assid = (
    SELECT s.assid
    FROM sale s
    WHERE s.udid = u.id
);</code>
Nach dem Login kopieren

Wichtiger Hinweis: Leistung und Datenbanksystemkompatibilität können die bevorzugte Syntax beeinflussen. Erwägen Sie, beide Ansätze zu testen, um die optimale Lösung für Ihr spezifisches Szenario zu ermitteln.

Das obige ist der detaillierte Inhalt vonWie aktualisiere ich eine SQL Server-Tabelle mithilfe eines Joins?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage