Ich versuche, einige Active Directory-Daten in SQL Server zu bereinigen. Ich habe es geschafft, die rohe LFD-Datei in eine Tabelle zu lesen. Jetzt muss ich einige Attribute bereinigen, in denen Werte über mehrere Zeilen verteilt sind. Ich kann Datensätze identifizieren, die an den vorherigen Datensatz angehängt werden müssen, da sie einen führenden Platz haben.T-SQL: Bereinigen von Daten, Zusammenführen von Zeilen in Spalten
Beispiel:
ID Record IsPartOfPrior
3114 memberOf: 0
3115 CN=Sharepoint-Members-home 1
3116 memberOf: 0
3117 This is 1
3118 part of the 1
3119 next line. 1
Letztlich würde Ich mag die folgende Tabelle haben, erzeugt:
ID Record
3114 memberOf:CN=Sharepoint-Members-home
3116 memberOf:This is part of the next line
ich es durch einen Cursor schreiben könnte, Setzen von Variablen, die Arbeit mit temporären Tabellen und bevölkerte Tabelle. Aber es muss einen satzbasierten (vielleicht rekursiven?) Ansatz dazu geben?
Ich könnte die STUFF-Methode verwenden, um verschiedene Zeilen miteinander zu kombinieren, aber wie soll ich die verschiedenen Gruppen zusammenfassen? Ich denke, dass ich zuerst Gruppen-IDs pro Datensatz definieren muss und sie dann per Gruppen-ID zusammenfassen muss?
Danke für jede Hilfe.
Tipp: Verwenden 'STUFF' – Sami
Wenn Sie die Daten aus AD vermutlich in Code lesen, dann warum Sie verketten nicht die Werte vor dem db speichern? – Phil