Tabelle umändern

MiMeng

Aktiver Benutzer
Beiträge
28
Hallo Zusammen, ich habe wieder folgende Frage,
ich möchte der erste Spalte von jeden Zeile auf eine neue Tabelle korpieren, die dort als Spaltename positionieren sollen, sieh Bsp. Bild:

Bsp.jpg

kann jemand mir dabei helfen? Vielen Dank!!

Gruß
 
Werbung:
Code:
test=*# select * from t1;
 lgr | anzahl
-----+--------
 c1  |  7
 s3  |  6
 p4  |  4
 q2  |  5
(4 rows)

test=*# select * from t2;
 lgr | anzahl
-----+--------
 c1  |  9
 s3  |  8
 p4  |  7
 q2  |  6
(4 rows)

test=*# select '2016-03-03'::date as datum, sum(case when lgr = 'c1' then anzahl else 0 end) as c1, sum(case when lgr='s3' then anzahl else 0 end) as s2 from t1 group by1 union all select '2016-03-04'::date, sum(case when lgr = 'c1' then anzahl else 0 end) as c1, sum(case when lgr='s3' then anzahl else 0 end) as s2 from t2 group by 1;
  datum  | c1 | s2
------------+----+----
 2016-03-03 |  7 |  6
 2016-03-04 |  9 |  8
(2 rows)

Mal für die ersten 2 Spalten. Du hast halt ein vollständig vergurktes Design. Ich an Deiner Stelle würde es entsorgen.
 
da kommt leider "
Meldung 102, Ebene 15, Status 1, Zeile 1
Falsche Syntax in der Nähe von '::'.
"
bei mir als Meldung.

wie kann ich das eigentich ohne Werte machen, also nur Spaltenamen
 
Da kann ich mich nur anschließen: Design fail.

'2016-03-04'::date -> cast('2016-03-04' AS DATE)

der Rest scheint MSSQL kompatibel zu sein.
 
dieses :: hab ich gerad schon gelöst, danke

meine andere Frage war, ich habe schon eine Tabelle fertig gestellt, wo die Lagergruppen als Zeile dagetsellt wird: Unbenannt1.PNG

jetzt will ich nur eine andere Tabelle erstellen, die Spaltename G4, C2, S1... nebeneinander stehen. Es sind insgesamt 104 LGRs, deswegen wollte ich fragen, wie ich alle aufeinmal in die neue Tabelle packen kann, ohne manuell zu erstellen. Thx
 
Geht über eine Proc, mußt halt dynamisch das SQL erstellen und ausführen. Da ich nur PG kann erspare ich mir hier aber eine Demo.
 
Werbung:
ahh ok, trotzdem danke für die Bemühung! Ich versuch weiter, hoffe dass noch hilfreiche Informationen gepostet wird!
 
Zurück
Oben