Ich habe eine Master-Tabelle, die eine Zeile pro Schlüssel und eine Detail-Tabelle, die viele Zeilen pro Schlüssel mit einem Sequenzfeld, das eine Beschreibung hat Feld muss ich verkettet und eine Zeile pro Schlüssel erstellen. Mein Code tut das gut, aber die Detaildatenzeile enthält die verketteten Daten nicht in der richtigen Reihenfolge. Die Daten werden mir in einer Excel-Tabelle geliefert, und ich verwende den Import-Assistenten, um die Daten zur Datenbank hinzuzufügen. Da die Reihenfolge in den Detaildaten nicht korrekt ist, habe ich eine Unterauswahl hinzugefügt, um die Daten nach Schlüssel und Sequenznummer zu sortieren, die die Eingabe in STUFF WITH XML PATH ist. Ich bekomme immer noch die Daten in einer falschen Reihenfolge. Wenn ich die Daten zuerst in der Tabelle sortiere und sie dann in die Datenbank lade, funktioniert das gut. Ich brauche das wirklich, um dynamisch zu arbeiten, weil ich das an mein Team verteilen möchte, und wir können es für verschiedene Tabellen verwenden. Irgendwelche Ideen, warum die Unterauswahl mit dem STUFF FOR XML PATH nicht funktioniert? Wie kann ich tun, was ich brauche? HierWie bekomme ich SQL-Abfrage mit Join und Verwendung von STUFF und FOR XML PATH korrekt sortiert werden
ist der Code, den ich habe:
SELECT pic, pisc, piin
, STUFF((SELECT ' ' + P.PIIDTA FROM PI115AP P
Where P.PIC =B.PIC
and P.PISC = B.PISC
and P.PIIN = B.PIIN FOR XML PATH(''), type
).value('.', 'nvarchar(max)'),1,1,'') As CombinedDetail
From
(select TOP 100 PERCENT
pic, pisc, piin, piisn, piidta
from PI115AP
order by pic, pisc, piin, piisn) B
Group By B.PIC, B.pisc, B.piin
Thank you!
Können Sie bitte zeigen, was Ihre Abfrage Ihnen derzeit gibt und was Ihre erwartete Ausgabe ist. – TheGameiswar
#TheGameiswar - Das Problem tritt nur auf, wenn sich Zeilen zwischen den sequentiellen Zeilen befinden. Die Detaildaten sind über 15.000 Zeilen und ich und die – Cass
Sorry #TheGameiswar - Das Problem tritt nur auf, wenn sich zwischen den Reihen Reihen befinden. Zum Beispiel kann ich 200 072 00002 1 PERM haben. DRÜCKEN SIE; 7 UNBRACHBARER KNOPF e01 006 00003 1 EINIGE TEXT weitere Zeilen ... 200 072 00002 2 FRONT; ZWEI TASCHEN, EINE FALSCHE & weitere Zeilen Die kombinierten Daten haben seq 3, seq1, seq5, geordnet nach dieser. Das Ergebnis sollte Seq 1 Daten, Seq2 Daten, usw. sein. Ich habe bei einem Kommentar einen begrenzten Platz, also habe ich das komprimiert, ich denke, es macht Sinn. – Cass