我的定义:
列变行:将本来在多个列上的数据变成多个行上的数据(竖向为列,横向为行)
如图:
显然对于a的所有成绩,分布在每个列中,如果我想变成如下形式:
由于这里将本来是一行的不同列的数据变成了多行,我个人认为是列变行
sql如下:
(select id,name,'数学' as type,math as sore from student)
union
(select id,name,'英语' as type,english as sore from student)
union
(select id,name,'语文' as type,chinese as sore from student)
这里 union 表示变成多行的时候不可以重复,如果你的需求可以重复可以使用union all