四舍五入从Teradata SQL助手中提取的值的问题

时间:2015-08-25 22:52:17

标签: sql decimal rounding teradata

我需要完善从Teradata SQL助手中提取的几个字段。 目前我使用CAST(Field1作为数字(20,2))作为Field1 18.529四舍五入至18.53但36.425四舍五入至36.42而我预计为36.43 如何实现这一目标?

3 个答案:

答案 0 :(得分:3)

CAST的舍入规则取决于dbscontrol中的全局设置 RoundHalfwayMagUp

您可以尝试使用ROUND函数,该函数默认使用您喜欢的舍入规则:

ROUND(36.425,2)

答案 1 :(得分:1)

我在论坛here上发现了一条旧帖子,其中指出RoundHalfwayMagUp控制是.5向上还是向下舍入。有关详细信息,请参阅the docs

答案 2 :(得分:0)

因为在36.425中,5接近0而不是10, 如果你把36.426放到36.43

回合:

它将如下所示

<0>在0和5之间>递增0(替换)

在5到10之间>增加1(替换)