双精度浮点数和错误

bvpmtnay  于 2021-06-21  发布在  Pig
关注(0)|答案(1)|浏览(454)

我有两个值的行。然而,它们的总和有额外的浮点数,我不想在输出中。有没有办法避免这个问题?

A = LOAD 'test.csv' Using PigStorage(',') AS (
        ID: chararray,
        COST:double
);
B = GROUP A BY (ID);
C = FOREACH B GENERATE SUM(A.COST); 
STORE C INTO 'out.txt' USING PigStorage(',');

输入文件

A,0.51
A,0.51
B,4.81
B,4.81

预期输出文件

A,1.02
B,9.62

实际输出文件无效

10.020000457763672
9.619999885559082
5n0oy7gb

5n0oy7gb1#

尝试 C = FOREACH B GENERATE ROUND(SUM(A.COST)*100.0)/100.0; 编辑它的作品,见下面的输出

相关问题