mysql列变行(多列变成多行)

我的定义:

列变行:将本来在多个列上的数据变成多个行上的数据(竖向为列,横向为行)

如图:


显然对于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

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值