Sql 计算并显示平均值

Sql 计算并显示平均值,sql,sql-server,sql-server-2008,Sql,Sql Server,Sql Server 2008,我有三个用户提交的分数,我想显示最接近10位的平均分数。目前,我正在使用以下查询: SELECT AVG(score) as AverageScore FROM PoemScores WHERE poemID = #qGetPoems.poemid# 我可以输出AverageScore,但只能使用\getScore.AverageScore作为整数。如何以n.n格式输出平均分数?数据库是MSSQL Server 2008。根据您的数据库引擎,您可能只需要将分数转换为十进制或浮点,然后再对其进行

我有三个用户提交的分数,我想显示最接近10位的平均分数。目前,我正在使用以下查询:

SELECT AVG(score) as AverageScore
FROM PoemScores
WHERE poemID = #qGetPoems.poemid#

我可以输出AverageScore,但只能使用
\getScore.AverageScore
作为整数。如何以n.n格式输出平均分数?数据库是MSSQL Server 2008。

根据您的数据库引擎,您可能只需要将分数转换为十进制或浮点,然后再对其进行平均

可能的方法:

select CAST(
            AVG(
                CAST(score as decimal(8,1))
            )
           as decimal(8,1)
           ) as AverageScore
 select convert(float(8,1), AVG( convert(float(8,1), score) ) ) as AverageScore
可能的mssql方法:

select CAST(
            AVG(
                CAST(score as decimal(8,1))
            )
           as decimal(8,1)
           ) as AverageScore
 select convert(float(8,1), AVG( convert(float(8,1), score) ) ) as AverageScore