Abfrageergebnis mit nur einer Zeile in Spalte umwandeln

Michi_R

Fleissiger Benutzer
Beiträge
81
Hallo Leute,

meine Abfrage sieht so aus:
select spalte1, spalte2, spalte3, spalte4, spalte5, spalte6 from table1 where date='2013-08-28'
Das Ergebnis ist IMMER eine Zeile, da es für jeden Tag nur einen Eintrag gibt.

Nun hätte ich gerne, dass diese Zeile mit 6 Spalte zu einer Spalte mit 6 Zeilen wird. Klar hab ich gegoogelt, aber das trifft nicht mein Problem, da geht es immer um etwas anderes.

Möglich ist es wohl, aber wie?

Merci!
 
Werbung:

akretschmer

Datenbank-Guru
Beiträge
9.530
Hallo Leute,

meine Abfrage sieht so aus:
select spalte1, spalte2, spalte3, spalte4, spalte5, spalte6 from table1 where date='2013-08-28'
Das Ergebnis ist IMMER eine Zeile, da es für jeden Tag nur einen Eintrag gibt.

Nun hätte ich gerne, dass diese Zeile mit 6 Spalte zu einer Spalte mit 6 Zeilen wird. Klar hab ich gegoogelt, aber das trifft nicht mein Problem, da geht es immer um etwas anderes.

Möglich ist es wohl, aber wie?

Merci!


select spalte1 from table where ... union all select spalte2 from table where ... und so weiter
 

akretschmer

Datenbank-Guru
Beiträge
9.530
select spalte1 from table where ... union all select spalte2 from table where ... und so weiter

Folgendes wird wohl in MySQL nicht funktionieren:

Code:
test=*# select * from foo;
 id | val1 | val2 | val3
----+------+------+------
  1 |   11 |   12 |   13
  2 |   21 |   22 |   23
(2 rows)

test=*# select unnest(array[val1,val2,val3]) from foo where id=1;
 unnest
--------
     11
     12
     13
(3 rows)
 
Werbung:
Oben