SQL:查找平均分数
给定这个表,我正在寻找一个查询来计算给定老师的给定问题的平均分数 如果我想在表中添加另一列,比如SCHOOLID,并希望有一列计算该学校给定问题的平均值,我会怎么做SQL:查找平均分数,sql,sql-server-2008,average,Sql,Sql Server 2008,Average,给定这个表,我正在寻找一个查询来计算给定老师的给定问题的平均分数 如果我想在表中添加另一列,比如SCHOOLID,并希望有一列计算该学校给定问题的平均值,我会怎么做 提前感谢您的帮助 您可以创建一个存储过程来处理整个需求 select teacherId, questionid, AVG(Score) From myTable group by teacherId, questionid CREATE PROCEDURE avarageCalc ( @teacherid nvarchar
提前感谢您的帮助 您可以创建一个存储过程来处理整个需求
select teacherId, questionid, AVG(Score)
From myTable
group by teacherId, questionid
CREATE PROCEDURE avarageCalc
(
@teacherid nvarchar(5) = null,
@questionid int = null,
@schoolid int = null
)
AS
Begin
SELECT AVG(SCORE) as Avarage
FROM Table
WHERE (TeacherID = @teacherid OR @teacherid IS NULL) AND
(QuestionId = @questionid OR @questionid IS NULL) AND
(SchoolId = @schoolid OR @schoolid IS NULL)
END
您可以创建一个存储过程来处理整个需求
CREATE PROCEDURE avarageCalc
(
@teacherid nvarchar(5) = null,
@questionid int = null,
@schoolid int = null
)
AS
Begin
SELECT AVG(SCORE) as Avarage
FROM Table
WHERE (TeacherID = @teacherid OR @teacherid IS NULL) AND
(QuestionId = @questionid OR @questionid IS NULL) AND
(SchoolId = @schoolid OR @schoolid IS NULL)
END
您可以这样做:
SELECT TeacherId, QuestionId, AVG(Score)
FROM TABLE-NAME
GROUP BY TeacherId, QuestionId
以下是一些有帮助的链接:
您可以这样做:
SELECT TeacherId, QuestionId, AVG(Score)
FROM TABLE-NAME
GROUP BY TeacherId, QuestionId
以下是一些有帮助的链接:
知道了!我觉得这很简单。请将其插入表中,我可以运行如下更新语句:update TEST set AVGSCORE\u TEACHER=x.测试中的分数t join选择TEACHERID,questionid,score=AVGSCORE from TEST group by TEACHERID,t.TEACHERID=x.TEACHERID上的questionid x对于您的更新语句,您要将:和t.questionid=x.questionid添加到您的加入中。明白了!我觉得这很简单。请将其插入表中,我可以运行如下更新语句:update TEST set AVGSCORE\u TEACHER=x.测试中的分数t join选择TEACHERID,questionid,score=AVGSCORE from TEST group by TEACHERID,t.TEACHERID=x.TEACHERID上的questionid x对于更新语句,您要将:和t.questionid=x.questionid添加到您的加入中。