0
点赞
收藏
分享

微信扫一扫

MYSQL行转列

表结构如下:

MYSQL行转列_子查询

插入模拟数据:

MYSQL行转列_子查询_02

select * from tb_score 查询的结果如下:

MYSQL行转列_数据_03

想要的结果如下:

MYSQL行转列_子查询_04

  1. 使用case…when…then 进行行转列

MYSQL行转列_子查询_05

  1. 使用IF() 进行行转列:

MYSQL行转列_子查询_06

  1. 利用SUM(IF()) 生成列 + WITH ROLLUP 生成汇总行,并利用 IFNULL将汇总行标题显示为Total

MYSQL行转列_子查询_07

MYSQL行转列_数据_08

  1. 利用SUM(IF()) 生成列 + UNION 生成汇总行,并利用 IFNULL将汇总行标题显示为 Total

MYSQL行转列_行转列_09

MYSQL行转列_行转列_10

  1. 利用SUM(IF()) 生成列,直接生成结果不再利用​​子查询​​

MYSQL行转列_子查询_11

MYSQL行转列_子查询_12


举报

相关推荐

0 条评论