Heim > Datenbank > MySQL-Tutorial > Wie kann ich SQL Server-Tabellen mithilfe von SELECT-Anweisungen aktualisieren?

Wie kann ich SQL Server-Tabellen mithilfe von SELECT-Anweisungen aktualisieren?

Susan Sarandon
Freigeben: 2025-01-25 05:07:08
Original
976 Leute haben es durchsucht

How Can I Update SQL Server Tables Using SELECT Statements?

Nutzung von SELECT-Anweisungen für SQL Server-Tabellenaktualisierungen

SQL Server bietet flexible Ansätze zum Ändern von Tabellendaten. Während INSERT INTO ... SELECT der Standard zum Hinzufügen von Zeilen ist, können Sie vorhandene Zeilen auch aktualisieren, indem Sie UPDATE in Verbindung mit einer SELECT-Anweisung verwenden. Dies bietet eine leistungsstarke Möglichkeit, mehrere Datensätze basierend auf Daten aus einer anderen Tabelle zu ändern.

So führen Sie Aktualisierungen mit dieser Technik durch:

Basis-Update mit SELECT:

Der grundlegende Ansatz besteht darin, die UPDATE-Anweisung zu verwenden, um die Zieltabelle und -spalten anzugeben, und dann eine SELECT-Anweisung zu verwenden, um die neuen Werte bereitzustellen. Eine WHERE-Klausel ist entscheidend, um sicherzustellen, dass nur die vorgesehenen Zeilen geändert werden:

<code class="language-sql">UPDATE Table SET col1 = a.col1, col2 = a.col2
FROM (SELECT col1, col2, id FROM other_table WHERE sql = 'cool') AS a
WHERE Table.id = a.id;</code>
Nach dem Login kopieren

In diesem Beispiel werden col1 und col2 in der Table-Tabelle mit Werten aus other_table aktualisiert, jedoch nur für Zeilen, in denen id übereinstimmt und die Bedingung sql = 'cool' in other_table erfüllt ist. Beachten Sie aus Gründen der Klarheit und Effizienz die Verwendung einer Unterabfrage mit dem Alias ​​„a“.

Erweiterte Updates mit JOINs:

Für komplexere Szenarien, bei denen es um übereinstimmende Zeilen in mehreren Tabellen geht, bietet eine JOIN-Klausel eine sauberere und effizientere Lösung:

<code class="language-sql">UPDATE Table_A
SET Table_A.col1 = Table_B.col1, Table_A.col2 = Table_B.col2
FROM Some_Table AS Table_A
INNER JOIN Other_Table AS Table_B ON Table_A.id = Table_B.id
WHERE Table_A.col3 = 'cool';</code>
Nach dem Login kopieren

Diese UPDATE-Anweisung verwendet ein INNER JOIN, um Some_Table und Other_Table basierend auf übereinstimmenden id-Werten zu verknüpfen. Anschließend werden col1 und col2 in Table_A mit den entsprechenden Werten von Table_B nur dort aktualisiert, wo Table_A.col3 = 'cool'. Diese Methode wird im Allgemeinen aufgrund ihrer Lesbarkeit und Leistung bevorzugt, insbesondere bei größeren Datensätzen. Denken Sie daran, den geeigneten JOIN Typ (INNER, LINKS, RECHTS, VOLLSTÄNDIG) basierend auf Ihren spezifischen Update-Anforderungen auszuwählen.

Das obige ist der detaillierte Inhalt vonWie kann ich SQL Server-Tabellen mithilfe von SELECT-Anweisungen aktualisieren?. 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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage