如何在SQL中拆分字符串并将部分汇总为新的数字变量?

时间:2019-03-21 11:15:35

标签: sql sql-server split

我有几个带有stringvariable的数据集,它是最多四个数值变量的串联结果。变量看起来像下面的示例:

enter image description here

我需要创建一个新的数字变量,其中包含“ ParSokBel”的总和。我不需要有关不同部分的信息,也不需要将来使用这些数据时需要多少信息。

在下一步中,我将多次循环解决方案。以下某些数据集中的一行中可能有四个以上的值。

该变量在数据结构中包含61-75个属性(随表生成而上下变化)。

我真的不想再次导入数据,也不确定要怎么做,因为其他一些属性包含逗号,应该这样做。

有人知道如何解决这个问题吗?我没有显示示例代码,因为我没有任何示例代码。我什至都不知道从哪里开始,因为我以前从未遇到过这样的事情。

我正在使用MSN SQL Server Express和MSN SQL Server 2014(它们都被使用,但是在数据生产过程的不同部分中,Server Express处理导入,而Server 2014是系统的全局环境)。我在Express环境中的自由权比在Server 2014环境中大。

1 个答案:

答案 0 :(得分:1)

好吧,您可以在最新版本的SQL Server中使用string_split()

select sum(try_convert(int, ss.val))
from t cross apply
     string_split(parsokbel, ',') ss(val);

如果您使用的是旧版SQL Server,则可以仔细阅读网络中的split()函数。