纵向转横向
我有一个 Access 的数据表Test,结构如下
id    学号     科目     成绩
-----------------------------
1      2       语文     89
2      2       数学     67
3      2       英语     78
4      3       语文     85
5      3       数学     67
6      3       英语     55
7      4       语文     76
8      4       数学     73
9      4       英语     84
---- 注意,科目是动态增加的
想通过代码实现为:
学号     语文     数学     英语   总分    平均分
2        89        67       78    234       78
3        85        67       55    207       69
4
请各位大侠帮解决下,主要是ACCESS本人没有用过。    
------解决方案--------------------select 学号,
	sum(iif(科目='语文',成绩,0)) as 语文,
	sum(iif(科目='数学',成绩,0)) as 数学,
	sum(iif(科目='英语',成绩,0)) as 英语,
	sum(成绩) as 总分,
	avg(成绩) as 成绩
from Test
group by 学号
------解决方案--------------------问题说明越详细,回答也会越准确!参见如何提问。(提问的智慧)
------解决方案--------------------SQL code
TRANSFORM first(成绩)
SELECT 学号,COUNT(成绩) AS 总分,AVG(成绩) AS 平均分
FROM 成绩表
GROUP BY 学号
PIVOT 科目