SQL Server Spalte in mehrere Spalten aufteilen

Alle anderen Themen ...

Moderator: ModerationP

SQL Server Spalte in mehrere Spalten aufteilen

Beitragvon Wurstmann » 03. Nov 2020, 13:41

Hallo zusammen,

hoffe das es in dieser Rubrik gesehen wird.

Ich habe eine Tabelle im SQL Server. Dort gibt es 1 Feld mit folgendem Inhalt:

Code: Alles auswählen
<cols><c id="1163" name="Part Number">12345</c><c id="1188" name="Part Number Issue">XX0</c></cols>


Weiß jemand wie ich das in Spalten getrennt bekomme?

Danke schonmal!

VG
WM
Wurstmann
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 572
Registriert: 26. Jun 2013, 09:11

Re: SQL Server Spalte in mehrere Spalten aufteilen

Beitragvon Hilfloser Bastler » 29. Nov 2020, 22:30

Hallo Wurstmann,

nachdem SQL eine Datenbank ist, hätte sich vielleicht das Access-Forum eher angeboten. Ich will es mal aus Excel-Sicht angehen.

Je nachdem, ob Du die Feldnamen benötigst oder nicht, lässt Du Deinen SQL-Export durch eine Suchen/Ersetzen-Funktion eines Texteditors (Notepad++, o.Ä.) laufen und trennst Deine Spalten einfach mit einem Semikolon. Falls das nicht geht, weil es Strichpunkte in Deinen Daten gibt, kannst Du auch z.B. die Raute # oder Tilde ~ definieren. Speichere das Ganze als .txt oder .csv-Datei und schreibe in die erste Zeile
Code: Alles auswählen
sep=[Dein Trenn-Zeichen]
Öffnest Du diese Datei dann mit Excel, werden Deine Daten in den gewünschten Spalten angezeigt.

Weil zu wenig Ahnung von SQL nur als Vermutung: Ich kann mir vorstellen, dass SQL ein entsprechend formatierte Tabelle auch in vorbereitete Spalten in eine Datenbank zurückholen kann.

Viel Erfolg wünscht

d'r Bastler
Selbst Heiden glauben an min. 10% Mystik in der EDV! Gilt auch für mein Win 10 pro/Office 2019 ProPlus und alle VBAsteleien ...
Inzwischen finde ich meinen Nutzernamen ziemlich doof. Denn eines ist sicher: Hilflos bleibt man hier nicht - Dankeschön!
Benutzeravatar
Hilfloser Bastler
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 380
Registriert: 15. Jan 2015, 16:13
Wohnort: VBAsteln makes the world go around

Re: SQL Server Spalte in mehrere Spalten aufteilen

Beitragvon knobbi38 » 30. Nov 2020, 04:59

Hallo WM,

du könntest es mit einer solchen Passthrough Query ausprobieren.
Code: Alles auswählen
select * from
(select
      pref.value('@id', 'int') as PartID,
      pref.value('@name', 'varchar(32)') as PartName,
      pref.value('(text())[1]', 'varchar(32)') as PartValue
 from
      MyTable CROSS APPLY
      Parts.nodes('/cols/c') AS Parts(pref)
) as Result

SQL-Fiddle:
http://sqlfiddle.com/#!18/ba9a4/2

Gruß Ulrich
knobbi38
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 3487
Registriert: 02. Jul 2015, 14:23

Re: SQL Server Spalte in mehrere Spalten aufteilen

Beitragvon Wurstmann » 01. Dez 2020, 12:08

Moin!

@Hilfloser Basler: Im Access Bereich geht es ja um Access, das hier ist ja SQL Server. Leider kann ich es auch nicht immer exportieren und weiterverarbeiten, da die Abfrage direkt in einer anderen Oberfläche (DevExpress) weiterverarbeitet wird.
Trotzdem Danke für den Input!

@Knobbi: Das hat super funktioniert. Damit kann ich es wunderbar trennen, filtern und anschließend pivotieren :-) Vielen Dank dafür!

VG
WM
Wurstmann
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 572
Registriert: 26. Jun 2013, 09:11


Zurück zu Offtopic (provisorisch)

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 4 Gäste