You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在SQL中实现Excel的RoundUp函数效果,将0.04268480693845取整为0.0428?

实现按指定步长向上取整到0.0428的SQL方案

你要的结果本质是按0.0002的增量步长向上取整到最近的倍数,而非常规的保留4位小数向上取整。原数0.04268480693845除以0.0002等于213.42403469225,向上取整后为214,再乘以0.0002就能得到你要的0.0428。

解决方案代码

DECLARE @mynumber float = 0.04268480693845
DECLARE @step float = 0.0002 -- 定义目标步长

SELECT 
    @mynumber AS MyNumber,
    CEILING(@mynumber / @step) * @step AS TargetResult

如果步长固定为0.0002,也可以直接写死计算:

DECLARE @mynumber float = 0.04268480693845

SELECT 
    @mynumber AS MyNumber,
    CEILING(@mynumber / 0.0002) * 0.0002 AS TargetResult

为什么之前的方法不生效

你之前使用CEILING(@mynumber * 10000)/10000是按0.0001的步长向上取整,所以得到0.0427,这和你需要的0.0002步长不匹配,因此无法得到目标结果。

内容的提问来源于stack exchange,提问作者Data_Science_Mick

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 18:45:16