除以小数值 - 舍入问题
Dividing by decimal values - rounding issue
我正在尝试除以两个十进制值,希望它们会 return 以下; 1.132930.
但是,SQL 似乎将该值四舍五入为 1.132931。
转换前 return 的值是 1.1329305135951。
我使用的SQL代码如下:
DECLARE @p1 DECIMAL(10,2)
DECLARE @p2 DECIMAL(10,2)
SET @p1 = 225.00
SET @p2 = 198.60
SELECT Cast(@p1/@p2 AS DECIMAL(9,6))
您可以按如下方式舍入转换前的值:
DECLARE @p1 DECIMAL(10,2)
DECLARE @p2 DECIMAL(10,2)
SET @p1 = 225.00
SET @p2 = 198.60
SELECT Cast(ROUND(@p1/@p2,6,1) AS DECIMAL(9,6))
我正在尝试除以两个十进制值,希望它们会 return 以下; 1.132930.
但是,SQL 似乎将该值四舍五入为 1.132931。
转换前 return 的值是 1.1329305135951。
我使用的SQL代码如下:
DECLARE @p1 DECIMAL(10,2)
DECLARE @p2 DECIMAL(10,2)
SET @p1 = 225.00
SET @p2 = 198.60
SELECT Cast(@p1/@p2 AS DECIMAL(9,6))
您可以按如下方式舍入转换前的值:
DECLARE @p1 DECIMAL(10,2)
DECLARE @p2 DECIMAL(10,2)
SET @p1 = 225.00
SET @p2 = 198.60
SELECT Cast(ROUND(@p1/@p2,6,1) AS DECIMAL(9,6))