Ovanstående fel inträffar eftersom din underfråga i SELECT
returnerar mer än en rad. Försök att utföra detta:
SELECT * FROM SplitStrings('1,2,3',',') x
Du kommer att se att den returnerar 3 rader, en för varje objekt.
För att fixa detta måste du använda CROSS APPLY
:
SELECT
c.acctcode,
x.primekey AS prime
INTO Chadtblsum
FROM Chadothercharges c
CROSS APPLY SplitStrings(c.groupby,',') x
WHERE groupby <> 'NULL'