当除法运算完成时,db2 sql给出0作为结果

时间:2017-05-01 06:18:36

标签: sql math db2 divide

SELECT CAST(64088.0200 AS DECIMAL(18,4))/ CAST(5555555555.0000 AS DECIMAL(18,4)) FROM SYSIBM.SYSDUMMY1;

这个查询给我0作为结果但是如果你用普通计算器做它然后它的结果是0.0011535843601154 - 所以至少我需要结果是0.0011

请就此提出建议。

1 个答案:

答案 0 :(得分:0)

这只是数学

 db2 values 64088.02 / 5555555555

 1
 ---------------------------------
      0,00001153584360115358436011

首先,你计算结果是错误的,因为两条评论也证明了。

db2 values cast(64088.02 / 5555555555 as decimal (18,4))

1
--------------------
              0,0000

SQL结果为0,因为您只指定了4个小数位。

排除小数位将最终显示正确的结果

db2 values cast(64088.02 / 5555555555 as decimal (18,8))

1
--------------------
          0,00001153

选择了1条记录。