MySql行转列

本文介绍了如何在MySQL中进行行转列的操作,通过具体的SQL语句,包括使用MAX和SUM函数实现转换,同时提到了列转行的SQL处理方法。
摘要由CSDN通过智能技术生成

1.准备数据

create table test2(
year int,
month int,
amount int
)
insert into test2(year,month,amount) values(1991,1,1.1);
insert into test2(year,month,amount) values(1991,2,1.2);
insert into test2(year,month,amount) values(1991,3,1.3);
insert into test2(year,month,amount) values(1991,4,1.4);
insert into test2(year,month,amount) values(1992,1,1.1);
insert into test2(year,month,amount) values(1992,2,1.2);
insert into test2(year,month,amount) values(1992,3,1.3);
insert into test2(year,month,amount) values(1992,4,1.4);
select * from test2;

行转列SQL语句
MAX和sum函数都可以

--方法1   行转列  
SELECT year as '年',
    sum(CASE month WHEN 1 THEN amount ELSE 0 END ) '一月',
    sum(CASE month WHEN 2 THEN amount ELSE 0 END ) '二月',
    sum(CASE month WHEN 3 THEN amount ELSE 0 END ) '三月',
    sum(CASE month WHEN 4 THEN amount ELSE 0 END ) '四月'
FROM test2
GROUP B
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值