How to change column from table to row?
Example data from table1
id | name | lastname | month1 | month2 | month3 |
1 | name1 | lastname1 | 300 | 400 | 500 |
2 | name2 | lastname2 | 10 | 20 | 30 |
Code :
SELECT id,name,lastname,amount,month
FROM (
SELECT id,name,lastname, month1 as amount, '1' as month FROM table1 as t1
UNION ALL
SELECT id,name,lastname,month2 as amount, '2' as month FROM table1 as t2
UNION ALL
SELECT id,name,lastname,month3 as amount, '3' as month FROM table1 as t3
)
Result :
id | name | lastname | amount | month |
1 | name1 | lastname1 | 300 | 1 |
1 | name1 | lastname1 | 400 | 2 |
1 | name1 | lastname1 | 500 | 3 |
2 | name2 | lastname2 | 10 | 1 |
2 | name2 | lastname2 | 20 | 2 |
2 | name2 | lastname2 | 30 | 3 |