You need to enable JavaScript to run this app. 求T-SQL适用的新增值占新总值5%的新增额计算公式
优惠活动
大模型
产品
解决方案
定价
更多

求T-SQL适用的新增值占新总值5%的新增额计算公式

T-SQL 求解目标x值的实现方案

公式推导

根据需求可列如下等式,设起始值为@StartValue,目标值为x,要求x等于「起始值+x」总和的5%:

x = 0.05 * (@StartValue + x)

等式变形推导后可得到简化计算式:
x = @StartValue * 0.05 / (1 - 0.05) = @StartValue / 19

你给出的示例代入验证:起始值380/19=20,x=20时占新总和(380+20)=400的5%,完全符合要求。
如果后续需要调整比例(比如改为8%、10%等),直接替换公式中的0.05为对应比例值即可。

T-SQL 实现代码

单值计算示例

DECLARE @StartValue DECIMAL(18,4) = 380;
DECLARE @Ratio DECIMAL(18,4) = 0.05; -- 可按需修改比例
DECLARE @X DECIMAL(18,4);

-- 核心计算逻辑
SET @X = @StartValue * @Ratio / (1 - @Ratio);

-- 结果验证查询
SELECT 
    @StartValue AS 起始值,
    @X AS 新增值X,
    @StartValue + @X AS 新总和,
    @X / (@StartValue + @X) AS X占新总和比例

表数据批量计算示例

如果需要对表中存储的批量起始值统一计算,直接在查询中嵌入公式即可:

SELECT 
    起始值字段 AS 起始值,
    起始值字段 * 0.05 / 0.95 AS 新增值X,
    起始值字段 + (起始值字段 * 0.05 / 0.95) AS 新总和
FROM 你的业务表名

注意事项

计算时建议使用精确数值类型(如DECIMAL),避免用FLOAT等浮点类型出现精度误差;如果起始值为整数且要求X返回整数,可按需套入ROUND/CEILING/FLOOR函数做取整处理。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.15 06:06:03