关于行列互换操作
要求:主从表记录学生信息实现形式: 姓名 年龄 性别 班级 语文 数学 英语
张三 15 男 二班 80 90 99
本帖最后由 wwbb 于 2024-7-24 13:25 编辑
这个时候可能需要用到视图来完成
先看效果:
主表:
从表:
视图sql:
SELECT
z.姓名,
z.年龄,
z.性别,
z.班级,
MAX(CASE WHEN c.[课程] = '语文' THEN c.[成绩] ELSE NULL END) AS 语文,
MAX(CASE WHEN c.[课程] = '数学' THEN c.[成绩] ELSE NULL END) AS 数学,
MAX(CASE WHEN c.[课程] = '英语' THEN c.[成绩] ELSE NULL END) AS 英语
FROM
[主表] z
LEFT JOIN
[从表] c ON z.[姓名] = c.[姓名]
GROUP BY
z.[姓名], z.[年龄], z.[性别], z.[班级]
图文列表啊
从表的姓名最好改成主表ID去关联 wangpenga 发表于 2024-7-24 11:47
从表的姓名最好改成主表ID去关联
要把课程在表标题显示出来,值为成绩 dlxubo 发表于 2024-7-24 12:11
要把课程在表标题显示出来,值为成绩
用图文列表,和这个差不多的 逛逛逛 发表于 2024-7-24 12:54
用图文列表,和这个差不多的
这个我也查到了,不符合要求
那就用sql 语句做查询吧 :hjyzw:
页:
[1]