我想要分成两个数字:5262167/162333331当使用Windows计算器(calc.exe)验证时,结果为0.0324158136076195但是当在SQL Server 2008R2中使用简单选择CAST函数时,我没有相同的结果。这是我在SQL编辑器中运行的内容:
select CAST((5262167 / 162333331) as decimal(18,8))
,结果为0.00000000
答案 0 :(得分:8)
你正在进行整数除法,它会截断任何余数。 5262167< 162333331,所以你的结果是0.在分割之前输入你的输入。
select CAST(5262167 as decimal(18,8)) / CAST(162333331 as decimal(18,8))
答案 1 :(得分:2)
另一种不太优雅的方式是:选择(5262167 * 1.0)/(1623333331 * 1.0))。我经常忘记施放它们,然后乘以1.0。