Vergleichen Sie zwei XML-Datenmengen mit XQuery in SQL Server

8

Angenommen, ich speichere Mitarbeiterdaten in einer Spalte xml in meiner Protokolltabelle. Manchmal werden Daten auch in der Spalte xml aus einer gespeicherten Prozedur aktualisiert.

Hier ist das Beispielbeispiel

%Vor%

Es gibt einen Unterschied in zwei xml Daten, die ich als alten Wert anzeigen muss & amp; neuer Wert als Ausgabe von sql

%Vor%

Ich muss nur den Unterschied wie oben zeigen. Führen Sie mich bitte an, wie Sie zwei XML-Daten mit XQuery vergleichen und den Unterschied nur in der oben beschriebenen Weise in SQL Server anzeigen. Bitte führen Sie mich mit Code-Snippet. Danke

    
Thomas 06.01.2012, 18:37
quelle

3 Antworten

15
%Vor%

Ergebnis:

%Vor%     
Mikael Eriksson 06.01.2012, 19:54
quelle
2

Ich habe nicht die genaue Ausgabe, die Sie wollten - aber Sie erhalten zumindest einen guten Vergleich zwischen alten und neuen Werten:

%Vor%

Gibt Ihnen eine Ausgabe von:

%Vor%

SQL Server eignet sich hervorragend zum Speichern und zum Bearbeiten von Daten - aber eine solche Präsentation sollte in einer Front-End-Anwendung (wie in einer ASP.NET-Anwendung) erfolgen - nicht in T-SQL ... .

    
marc_s 06.01.2012 19:12
quelle
0

Ich bin hier zu spät !!! Allerdings habe ich festgestellt, dass, wenn Mitarbeiter XML wie oben gezeigt mehrere Datensätze hat, die JOIN-Abfrage mit CTE falsche Ergebnisse zurückgibt.

Ich habe unter XML-Eingabe

%Vor%

Ich werde unter Abfrage verwenden, um den Unterschied zu finden

%Vor%

Hoffe, das hilft !!!

    
Akshay 19.04.2017 07:08
quelle