这个问题确实是让人有些费解的。 看下面的例子:create table t(c1 decimal(18,4), c2 decimal(18,4))DB20000I The SQL command completed successfully.insert into t values(9.99, 7.25),(19.99, 15.99),(49.99, 39.99)DB20000I The SQL command ...
显示全部这个问题确实是让人有些费解的。 看下面的例子:
create table t(c1 decimal(18,4), c2 decimal(18,4))
DB20000I The SQL command completed successfully.
insert into t values(9.99, 7.25),(19.99, 15.99),(49.99, 39.99)
DB20000I The SQL command completed successfully.
select sum(c1), sum(c2), sum(c1) / sum(c2) from t
1 2 3
--------------------------------- --------------------------------- ---------------------------------
79.9700 63.2300 1.
1 record(s) selected.
select sum(c1), sum(c2), cast(sum(c1) as decimal(18,4)) / cast(sum(c2) as decimal(18,4)) from t
1 2 3
--------------------------------- --------------------------------- ---------------------------------
79.9700 63.2300 1.2647477463229
1 record(s) selected.
我也不大习惯这个用法的其实。
另外的解决办法是在创建DB之前,把 Number compatibility 开关打开。
Number compatibility = OFF
收起