SQL Server 2008: Schnelle Datenbankaktualisierung mit MERGE

In der Tabelle Sales-Feed sind jetzt einige Zeilen mit Daten vorhanden. In der Tabelle Sales-Archive befinden sich jedoch noch keine Daten. Jetzt muss die MERGE-Anweisung erzeugt werden, um Daten zu dieser Tabelle hinzuzufügen.

Auf den ersten Blick sieht das ziemlich kompliziert aus. Wenn man sich aber erst einmal daran gewöhnt hat, ist es nicht mehr so vertrackt. Die Tabelle, die direkt auf die MERGE-Anweisung folgt, ist diejenige, die manipuliert wird. Sie ist also die Zieltabelle.

In der USING-Anweisung werden Daten aus der Sales-Feed-Tabelle in einer Unterabfrage auf Basis der Customer-ID gruppiert. Dieser Teil ist als Quelltabelle bereits bekannt. Die Gruppierung gewährleistet, dass es nur einen Datensatz pro Kunde gibt, mit dem die Tabelle Sales-Archive aktualisiert wird.

In der ON-Klausel der MERGE-Anweisung wird Folgendes angegeben: die Verbindung zwischen der Quelle, der Datengruppierung aus der Unterabfrage und dem Ziel, also der Tabelle Sales-Archive.

In der Klausel WHEN-NOT-MATCHED wird angegeben, was geschehen soll, falls die Datensätze der Quelle nicht im Ziel gefunden werden. In diesem Szenario sollen diese Datensätze in die Tabelle Sales-Archive eingefügt werden.

In der WHEN-MATCHED-Klausel wird festgelegt, was geschehen muss, wenn die Datensätze aus der Tabelle Sales-Archive und der Unterabfrage der Tabelle Sales-Feed gefunden werden. In diesem Beispiel soll aktualisiert werden, was die Tabelle für diesen Tag verzeichnet, etwa die Gesamtsumme aller Verkäufe (TotalSalesAmount), die Anzahl der Verkäufe (TotalSalesCount) und das aktuelle Datum (UpdatedDate).

Wenn eine weitere Verkaufseingabe in die Datenbank gelangt, muss nur noch eine Anweisung ausgeführt werden. Alle neuen Kundenverkäufe werden zur Datenbank hinzugefügt. Zugleich werden alle vorhandenen Verkäufe mit den neuen Verkaufsinformationen aktualisiert.

Page: 1 2

ZDNet.de Redaktion

Recent Posts

Alphabet übertrifft die Erwartungen im ersten Quartal

Der Umsatz steigt um 15 Prozent, der Nettogewinn um 57 Prozent. Im nachbörslichen Handel kassiert…

4 Tagen ago

Microsoft steigert Umsatz und Gewinn im dritten Fiskalquartal

Aus 61,9 Milliarden Dollar generiert das Unternehmen einen Nettoprofit von 21,9 Milliarden Dollar. Das größte…

5 Tagen ago

Digitalisierung! Aber wie?

Mehr Digitalisierung wird von den Unternehmen gefordert. Für KMU ist die Umsetzung jedoch nicht trivial,…

5 Tagen ago

Meta meldet Gewinnsprung im ersten Quartal

Der Nettoprofi wächst um 117 Prozent. Auch beim Umsatz erzielt die Facebook-Mutter ein deutliches Plus.…

5 Tagen ago

Maximieren Sie Kundenzufriedenheit mit strategischem, kundenorientiertem Marketing

Vom Standpunkt eines Verbrauchers aus betrachtet, stellt sich die Frage: Wie relevant und persönlich sind…

5 Tagen ago

Chatbot-Dienst checkt Nachrichteninhalte aus WhatsApp-Quellen

Scamio analysiert und bewertet die Gefahren und gibt Anwendern Ratschläge für den Umgang mit einer…

5 Tagen ago