我正在尝试建立一个查询,该查询从3个表中提取数据并填充名为#TempStudentAcademics的表,该表在以下屏幕截图中可见:
我只是没有正确设置查询结构并遇到错误,现在这可能是由于我缺乏连接经验,但我还是尝试了一下。
我需要从中提取数据的表是:
学生
测试
STUDENT_SCORES
我尝试了多个scenerio,但是我在获取每个学生各自测试结果的行数据并将其输入到现在的单独测试列中时最费力。
以下是我尝试并失败的许多变体之一:
SELECT STUDENTS.STUDENT_ID, isnull(STUDENTS.STUDENT_FIRSTNAME,'') +' '+ isnull(STUDENTS.STUDENT_SURNAME,''), STUDENT_SCORES.STUDENT_SCORE , AVG(STUDENT_SCORES.STUDENT_SCORE) FROM
(select * from STUDENT_SCORES) STUDENT_SCORES
inner join
(select * from TESTS)TESTS
on STUDENT_SCORES.TEST_ID=TESTS.TEST_ID
inner join
(select * from SUBJECTS) SUBJECTS
on TESTS.SUBJECT_ID= SUBJECTS.SUBJECT_ID
inner join
(Select * from STUDENTS) STUDENTS
on STUDENT_SCORES.STUDENT_ID=STUDENTS.STUDENT_ID
答案 0 :(得分:0)
您可以使用GroupBy轻松获得每个测试的测试总数和平均值。但是,student_total_average有点棘手。您想如何计算该列?