我有以下格式的数据:
-1,-1,-1,-1,701,-1,-1,-1,-1,-1,304,390,403,435,438,439,442,455
我需要将其插入到临时表中,如下所示:
CREATE TABLE #TEMP ( Node int )
这样我就可以将其与另一个表中的数据进行比较。
上面的数据代表“节点”列的单独行。
是否有一种简单的方法可以将所有这些数据全部插入一个命令中?
另外,数据实际上将以字符串形式进入,因此…我需要能够将其连接到SQL查询字符串中。显然,如果需要,我可以先对其进行修改。
尝试类似的东西
CREATE TABLE #TEMP ( Node int ) DECLARE @textXML XML DECLARE @data NVARCHAR(MAX), @delimiter NVARCHAR(5) SELECT @data = '-1,-1,-1,-1,701,-1,-1,-1,-1,-1,304,390,403,435,438,439,442,455 ', @delimiter = ',' SELECT @textXML = CAST('<d>' + REPLACE(@data, @delimiter, '</d><d>') + '</d>' AS XML) INSERT INTO #TEMP SELECT T.split.value('.', 'nvarchar(max)') AS data FROM @textXML.nodes('/d') T(split) SELECT * FROM #TEMP DROP TABLE #TEMP