mysql的行列互转(图文详解)

行转列:

假如现在你有这样一张表,

id name course score
1 张三 数学 34
2 张三 语文 55
3 李四 数学 66
4 李四 语文 77
5 王五 数学 88
6 王五 语文 99

你想运用行转列将表格变成下面这样:

name 数学 语文
张三 34 55
李四 66 77
王五 88 99

首先我们建立一个test1表并且插入所需的数据, 演示如下:

此时我们使用命令select * from 来查看下创建的表

 

接下来使用max是为了将无数据的点设为0,防止出现NULL 。演示如下:

 列转行:

列转行其实就是将上面的表互转。

即将

id name 数学 语文
1 张三 34 55
2 李四 66 77
3 王五 88 99

转化为

name course score
张三 数学 34
张三 语文 55
李四 数学 66
李四 语文 77
王五 数学 88
王五 语文 99

首先我们创建一个test2表并插入数据,演示如下:

查看一下test2表的结构

 

接下来我们进行列转行操作:

这样列转行就完成了。

猜你喜欢

转载自blog.csdn.net/qq_39038465/article/details/81938297