0

我有这个问题:在我的数据库中有一个双值字段。我需要这个值按一个恒定步长四舍五入:例如,我设置一个步长为 20.0,我希望值 17.8 变为 20.0,值 31.2 变为 40.0 等等。

我如何通过查询来做到这一点?

提前致谢

4

2 回答 2

1

为此,您可以将值除以步长,将其四舍五入,然后乘以步长。大多数 SQL 方言都有算术函数。

于 2013-03-12T23:52:22.717 回答
1
declare @stepsize float = 20.0

declare @val float = 17.6

select CEILING(@val / @stepsize) * @stepsize    -- Result 20.0

set @val = 31.2

select CEILING(@val / @stepsize) * @stepsize    -- Result 40.0

从您的问题中不清楚 6.0 应该用 20.0 的 stepzie “四舍五入”到什么程度。它应该四舍五入到零吗?

于 2013-03-12T23:56:54.793 回答