2011-01-16 15 views
1

Ich habe eine Menge Fragen, um dies auf die andere Weise zu tun, aber ich kann es auf diese Weise nicht lösen.MySQL Pivot einzelne Zeile

Lassen Sie uns sagen, dass ich eine Zeile aus einer Tabelle auswählen, so habe ich die folgenden:

A | B | C | D | E 
------------------ 
1| 2 | 3 | 4 | 5 

Wie kann ich es in mysql schwenken wie etwas zu schaffen:

r | c 
----- 
A | 1 
----- 
B | 2 
----- 
C | 3 
----- 
D | 4 
----- 
E | 5 

, die ich plane, dann verbinde dich mit einem anderen Tisch.

Ist das möglich? Wie? Ich kann mir keine Gedanken machen und ich kann keine Antwort auf Google finden.

Vielen Dank.

+0

Sie wollen also im Grunde eine Pivot-Tabelle erstellen? –

Antwort

1

Wenn Spaltennamen festgelegt sind, können Sie diese

(Probentabelle)

create table so_tmp(a int, b int, c int, d int, e int); 
insert into so_tmp select 1,2,3,4,5; 

wählen a, b, c, d, e von so_tmp;

Unpivot query:

select 'a' r, a c from so_tmp 
union all 
select 'b', b from so_tmp 
union all 
select 'c', c from so_tmp 
union all 
select 'd', d from so_tmp 
union all 
select 'e', e from so_tmp;