pl\sql 行列转换问题 有个问卷结果表。字段有:问卷Id,题目分类、题号、得分。
数据如下:
问卷Id 题目分类 题号 得分
答卷1 A 1 5
答卷1 A 2 4
答卷1 B 1 3
答卷1 B 2 2
答卷2 A 1 5
答卷2 A 2 4
答卷2 B 1 5
答卷2 B 2 4
答卷3 A 1 5
答卷3 B 2 4
我想要的查询结果:
答卷1 题目分类A均分 题目分类B均分
答卷2 题目分类A均分 题目分类B均分
pl\sql?sql数据库
------解决方案--------------------
select 问卷Id,
'A' as '题目分类',
avg (case when case when 题目分类 = 'A' then 得分 end) as '均分',
'B' as '题目分类',
avg (case when case when 题目分类 = 'B' then 得分 end) as '均分'
from 问卷结果表
group by 问卷Id