我需要将SQL Server 2012中的聚合函数的结果更改为十进制
M1
和M2
是我的表格中的两列,其数据类型为int
。
我需要找到sum(M1)/sum(M2)
,结果应该是2位小数。
我怎样才能做到这一点?
答案 0 :(得分:3)
我相信你需要将两者都转换为小数。结果将是一个小数,没有其他推断类型转换
cast(sum(M1) as decimal(9,2))/cast(sum(M2) as decimal(9,2))
答案 1 :(得分:0)
您需要在分割前转换值。请阅读BOL文章Data Type Precedence
CAST(SUM(M1) as DECIMAL(10,2))/CAST(SUM(M2) as DECIMAL(10,2)