2011-05-31 99 views
0

我有三个用户提交的分数,并希望显示平均分数到最近的十分之一的位置。目前,我使用的查询:计算和显示平均值

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

我能够输出AverageScore,但使用#getScore.AverageScore#只是作为一个整数。如何输出格式为n.n的平均分数?该数据库是MSSQL Server 2008.

回答

1

根据数据库引擎的不同,您可能只需要在计算平均值之前将分数转换为小数或浮点数。

可能mysql的方法:

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

可能MSSQL的方法:

select convert(float(8,1), AVG(convert(float(8,1), score))) as AverageScore 
+0

你的MySQL版本将在SQL Server中工作了。 – 2011-05-31 21:56:13