Tabelle umstrukturieren
Mallovitz
- datenbank
Guten Morgen!
Ich möchte eine Tabelle per Abfrage (View) umstrukturieren von
Id | WertA | WertB | WertC | WertD
-------------------------------------------
1 100 150 120 130
2 120 140 100 150
...
in
Id | Wert | Kategorie
-------------------------------
1 100 WertA
1 150 WertB
1 120 WertC
1 130 WertD
2 120 WertA
2 140 WertB
2 100 WertC
2 150 WertD
...
Ich habe keinen blassen Schimmer, wie ich die Spaltennamen in die jeweilgen Felder kriegen soll...
Mallovitz
Hi!
Ich möchte eine Tabelle per Abfrage (View) umstrukturieren von
Id | WertA | WertB | WertC | WertD1 100 150 120 130
2 120 140 100 150
...
Kannst du demjenigen, der dieses Design verbrochen hat, mal sagen, das er da Mist fabriziert hat?
Id | Wert | Kategorie
1 100 WertA
1 150 WertB
1 120 WertC
1 130 WertD
2 120 WertA
2 140 WertB
2 100 WertC
2 150 WertD
...
Ich habe keinen blassen Schimmer, wie ich die Spaltennamen in die jeweilgen Felder kriegen soll...
Erstmal musst du aus einem Datensatz mehrere machen. Das geht mit einem SELECT schonmal nicht. Da brauchst du in deinem Fall mit 4 Feldern 4 SELECTs, die du mit UNION verbinden kannst. Also, ein SELECT erzeugt die WertA-Datensätze, indem es den Inhalt aus ID und WertA sowie den String 'WertA' mit dem Alias 'Kategorie' liefert. Analog dazu die drei anderen SELECTs.
Lo!
Kannst du demjenigen, der dieses Design verbrochen hat, mal sagen, das er da Mist fabriziert hat?
Ja, hab ich schon :) Die "Datenbank" ist vor Jahren mal aus einem Excelimport entstanden und hat genau *trommelwirbel EINE Tabelle *ächz
Bin schon am Überlegen, ob ich das nicht auseinanderhaue und normalisiere...
Erstmal musst du aus einem Datensatz mehrere machen. Das geht mit einem SELECT schonmal nicht. Da brauchst du in deinem Fall mit 4 Feldern 4 SELECTs, die du mit UNION verbinden kannst. Also, ein SELECT erzeugt die WertA-Datensätze, indem es den Inhalt aus ID und WertA sowie den String 'WertA' mit dem Alias 'Kategorie' liefert. Analog dazu die drei anderen SELECTs.
Lo!
Danke!
Hallo,
nach mach doch n Refactoring. Die urspruengliche Ansicht kannst du doch auch wieder durch eine View wiederherstellen.
Was du suchst, nennt sich UNPIVOTING.
Ueber welches Datenbanksystem und Version reden wir hier?
Cheers, Frank
moin,
Ich möchte eine Tabelle per Abfrage (View) umstrukturieren von
Id | WertA | WertB | WertC | WertD1 100 150 120 130
2 120 140 100 150
...Kannst du demjenigen, der dieses Design verbrochen hat, mal sagen, das er da Mist fabriziert hat?
kann man so pauschal ohne die genauen umstände und schon gar nicht ohne die entitäten und attribute zu kennen gar nicht sagen. ich weiß noch nicht mal, was sich hinter WertA oder WertB verbirgt....
Ilja