当在SQL Server中执行以下查询时:
输出结果为:3.142857142857142857。
有人可以解释一下为什么会这样吗?
我在SQL Server中遇到了类似的情况,我需要在将两个
问题在于,这两列来自另一个表,在那里它们被定义为
SELECT
CAST(22) AS decimal(38, 10) / CAST(7) AS decimal(38, 10) AS pie
输出结果为:3.142857。
但是当我以更低的精度20运行相同的查询时,小数点后面会有更多的值。
SELECT
CAST(22) AS decimal(20, 10) / CAST(7) AS decimal(20, 10) AS pie
输出结果为:3.142857142857142857。
有人可以解释一下为什么会这样吗?
我在SQL Server中遇到了类似的情况,我需要在将两个
decimal(38, 10)
列相除时获得精确的值,保留10位小数。问题在于,这两列来自另一个表,在那里它们被定义为
DECIMAL(38, 10)
。