SQL Server转换为击球平均值

时间:2013-04-28 13:59:29

标签: sql-server type-conversion

并提前感谢您的帮助..

我正在为垒球队写一个非常简单的统计跟踪器。我知道如何计算击球率,但是我需要在结果区域显示3个小数位,它只显示一个。对于EX:

需要展示

BA = 0.500

目前正在展示什么

BA = 0.5

我在创建设计时搞砸了,所以我不得不将值转换为查询中的浮点数。

SELECT _num, _firstName + ' ' + _lastName AS Name, 
      CAST(_Hits AS float) / CAST(_AtBat AS float) AS BA, 
      _RBI, _Triples, _Doubles, _Singles, _HomeRuns, _Scores, 
      _StrikeOuts, _OutAtBase
FROM _PlayerStats 
ORDER BY _num

我也尝试过Convert方法,如果我使用Convert或Cast似乎并不重要,无论如何它们与我读过的内容几乎相同。

我想我已经尝试了几乎所有的东西我已经研究过类似的帖子好几天了。

我还尝试格式化绑定字段,我发现有人有类似的问题,但这不起作用

<td>
   <asp:Label ID="BALabel" runat="server" Text='<%# Eval("BA", "{0:#.000}") %>' />
</td>

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

怎么样

SELECT _num, _firstName + ' ' + _lastName AS Name, 
  str(CAST(_Hits AS float) / CAST(_AtBat AS float) ,5,3 ) AS BA, 
  _RBI, _Triples, _Doubles, _Singles, _HomeRuns, _Scores, 
  _StrikeOuts, _OutAtBase
  FROM _PlayerStats ORDER BY _num

fiddle