Heim > Datenbank > MySQL-Tutorial > Wie kann ich Daten aus mehreren Tabellen effizient in eine temporäre Tabelle oder Tabellenvariable in SQL Server einfügen?

Wie kann ich Daten aus mehreren Tabellen effizient in eine temporäre Tabelle oder Tabellenvariable in SQL Server einfügen?

Barbara Streisand
Freigeben: 2024-12-29 12:32:10
Original
610 Leute haben es durchsucht

How Can I Efficiently Insert Data from Multiple Tables into a Temporary Table or Table Variable in SQL Server?

Einfügen in eine temporäre Tabelle oder Tabellenvariable mit MERGE

In SQL Server kann die OUTPUT-Klausel keine Daten aus mehreren Tabellen abrufen, was dies schwierig macht Erfassen Sie bestimmte Werte während Einfügevorgängen. Die MERGE-Anweisung bietet jedoch eine Lösung für dieses Problem.

So fügen Sie Daten mit MERGE in eine temporäre Tabelle oder Tabellenvariable ein:

  1. Füllen Sie die temporäre Tabelle oder Tabellenvariable mit der MERGE-Anweisung . Dadurch können Sie Werte sowohl aus den eingefügten Zeilen als auch aus den Quelldaten abrufen.
  2. Verwenden Sie die OUTPUT-Klausel in der MERGE-Anweisung, um anzugeben, welche Spalten ausgegeben werden sollen.

Hier ist ein Beispiel:

MERGE INTO Table3 USING
(
    SELECT null as col2, 
           110 as col3, 
           Table1.ID as col4, 
           Table2.Column2 as col5,
           Table2.Id as col6
    FROM Table1
    JOIN Table1Table2Link on Table1.ID=Table1Table2Link.Column1
    JOIN Table2 on Table1Table2Link.Column2=Table2.ID
) AS s ON 1 = 0 -- Always not matched
WHEN NOT MATCHED THEN
INSERT (Column2, Column3, Column4, Column5)
VALUES (s.col2, s.col3, s.col4, s.col5)
OUTPUT Inserted.ID, s.col6
INTO @MyTableVar (insertedId, Table2Id); 
Nach dem Login kopieren

In diesem Beispiel füllt die MERGE-Anweisung die temporäre Tabelle @MyTableVar mit der Inserted.ID und Table2.ID-Werte. Die OUTPUT-Klausel gibt an, dass diese beiden Spalten in die temporäre Tabelle ausgegeben werden sollen.

Mit dieser Methode können Sie Daten aus verschiedenen Tabellen während Einfügevorgängen mithilfe der Leistungsfähigkeit von MERGE-Anweisungen in SQL Server effizient erfassen und bearbeiten.

Das obige ist der detaillierte Inhalt vonWie kann ich Daten aus mehreren Tabellen effizient in eine temporäre Tabelle oder Tabellenvariable in SQL Server einfügen?. 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