星空2020 2023-11-11 21:25 采纳率: 64.1%
浏览 5
已结题

mysql如何实现动态列转行

如下建表.
由于实际日期date列很多,如何动态的将date列转为行,并实现如下显示效果。

img


```sql
DROP TABLE IF EXISTS tb_score;

CREATE TABLE tb_score(
    id INT(11) NOT NULL auto_increment,
    userid VARCHAR(20) NOT NULL COMMENT '用户id',
    name VARCHAR(20) COMMENT '姓名',
    week VARCHAR(20) COMMENT '周期',
    subject VARCHAR(20) COMMENT '科目',
    score DOUBLE COMMENT '成绩',
    date DATE '日期',
    PRIMARY KEY(id)
)ENGINE = INNODB DEFAULT CHARSET = utf8;


INSERT INTO tb_score(userid,subject,score) VALUES ('001','zhang','周三','语文','90','2023-11-01');
INSERT INTO tb_score(userid,subject,score) VALUES ('001','zhang','周四','数学','90','2023-11-02');
INSERT INTO tb_score(userid,subject,score) VALUES ('001','zhang','周五','英语','90','2023-11-03');
INSERT INTO tb_score(userid,subject,score) VALUES ('001','li','周三','语文','90','2023-11-01');
INSERT INTO tb_score(userid,subject,score) VALUES ('001','li','周四','数学','90','2023-11-02');
INSERT INTO tb_score(userid,subject,score) VALUES ('001','li','周五','英语','90','2023-11-03');
INSERT INTO tb_score(userid,subject,score) VALUES ('001','lee','周三','语文','90','2023-11-01');
INSERT INTO tb_score(userid,subject,score) VALUES ('001','lee','周四','数学','90','2023-11-02');
INSERT INTO tb_score(userid,subject,score) VALUES ('001','lee','周五','英语','90','2023-11-03');
INSERT INTO tb_score(userid,subject,score) VALUES ('001','lee','周六','政治','90','2023-11-04');


![img](https://img-mid.csdnimg.cn/release/static/image/mid/ask/59408090799613.png "#left")

```

  • 写回答

2条回答 默认 最新

  • 创意程序员 2023-11-11 21:44
    关注

    可以看这篇文章,有详细的分析过程,有疑问给我发消息:动态行转列:处理不确定数量的行转列操作

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 12月12日
  • 已采纳回答 12月4日
  • 创建了问题 11月11日

悬赏问题

  • ¥200 csgo2的viewmatrix值是否还有别的获取方式
  • ¥15 Stable Diffusion,用Ebsynth utility在视频选帧图重绘,第一步报错,蒙版和帧图没法生成,怎么处理啊
  • ¥15 请把下列每一行代码完整地读懂并注释出来
  • ¥15 pycharm运行main文件,显示没有conda环境
  • ¥15 易优eyoucms关于二级栏目调用的问题
  • ¥15 寻找公式识别开发,自动识别整页文档、图像公式的软件
  • ¥15 为什么eclipse不能再下载了?
  • ¥15 编辑cmake lists 明明写了project项目名,但是还是报错怎么回事
  • ¥15 关于#计算机视觉#的问题:求一份高质量桥梁多病害数据集
  • ¥15 特定网页无法访问,已排除网页问题