Arm*_*ian 5 sql sql-server precision decimal union-all
当我执行这个SQL时
SELECT 1.4 UNION ALL
SELECT 2.0400 union all
SELECT 1.24
Run Code Online (Sandbox Code Playgroud)
我得到以下结果:
1.4000
2.0400
1.2400
但是当我执行以下SQL时
SELECT sum(1.4) UNION ALL
SELECT sum(2.0400) union all
SELECT sum(1.24)
Run Code Online (Sandbox Code Playgroud)
我得到以下结果:
1.4
2.0
1.2
为什么所有记录的精度(比例)都有差异?不应该总是使用没有数据丢失的精度,就像第一个sql一样?
谢谢.
小智 0
尝试这个以获得相同的结果,
SELECT Cast(Sum(1.4) As Numeric(18,4)) UNION ALL
SELECT Cast(Sum(2.0400) As Numeric(18,4)) union all
SELECT Cast(Sum(1.24) As Numeric(18,4))
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1606 次 |
最近记录: |