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

SQL Server中如何编写语句计算列A各位数字之和生成列B

在SQL Server中计算数字列各位数字之和的实现方案

需求是生成列B,用于存储列A中各位数字的和。例如当列A的值为12345时,列B的值为1+2+3+4+5=15。

最初的思路是多次使用LEFT函数拆分数字到不同列后求和,考虑到目标列的数字位数不超过10位,最终可以使用以下SQL语句实现:

SELECT '1234567'
    , convert(integer,left('1234567',1))
    + convert(integer,right(left('1234567',2),1))
    + convert(integer,right(left('1234567',iif(len('1234567') >= 3, 3, 0)),1))
    + convert(integer,right(left('1234567',iif(len('1234567') >= 4, 4, 0)),1))
    + convert(integer,right(left('1234567',iif(len('1234567') >= 5, 5, 0)),1)) 
    + convert(integer,right(left('1234567',iif(len('1234567') >= 6, 6, 0)),1))
    + convert(integer,right(left('1234567',iif(len('1234567') >= 7, 7, 0)),1))
    + convert(integer,right(left('1234567',iif(len('1234567') >= 8, 8, 0)),1))
    + convert(integer,right(left('1234567',iif(len('1234567') >= 9, 9, 0)),1))
    + convert(integer,right(left('1234567',iif(len('1234567') >= 10, 10, 0)),1))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 11:35:05