“SQL行列转换”的版本间的差异

来自姬鸿昌的知识库
跳到导航 跳到搜索
第60行: 第60行:
 
|82
 
|82
 
|}
 
|}
 +
<syntaxhighlight lang="sql">
 +
CREATE TABLE `score` (
 +
  `sname` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL,
 +
  `cname` varchar(45) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
 +
  `grade` int(11) DEFAULT NULL
 +
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
 +
 +
</syntaxhighlight>

2022年11月11日 (五) 06:31的版本

https://www.bilibili.com/video/BV1MF411z7X9

问题描述

学生成绩记录表包含以下信息:

sname cname grade
张三 语文 80
李四 语文 77
王五 语文 91
张三 数学 85
李四 数学 90
王五 数学 60
…… …… ……


要求以每个学生一行数据的形式创建以下报表:

姓名 语文 数学 英语
张三 80 85 81
李四 77 90 69
王五 91 60 82
CREATE TABLE `score` (
  `sname` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL,
  `cname` varchar(45) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `grade` int(11) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;