我需要在单独的行中将这些IMS080','IMS108','IMS218
值插入temptable
中,如下所示:
row 1: IMS080
row 2: IMS108
row 3: IMS218
查询:
INSERT INTO #TableName
SELECT UserID
FROM ('IMS080', 'IMS108', 'IMS218')
提前感谢
发布于 2017-12-08 07:02:22
可以将所有id添加到一个以逗号分隔的字符串中,并将其拆分到每一行。这会帮到你的。
INSERT INTO #TableName
SELECT Split.a.value('.', 'VARCHAR(100)') AS USERID
FROM
(
SELECT CAST ('<M>' + REPLACE('IMS080,IMS108,IMS218', ',', '</M><M>') + '</M>' AS XML) AS Data
)AS A CROSS APPLY Data.nodes ('/M') AS Split(a);
发布于 2017-12-08 07:03:51
你可以使用union
Insert into #TableName
SELECT 'IMS080' UserID
union
select 'IMS108' UserID
union
select 'IMS218' UserID
编辑:
Insert into #TableName
values ('IMS080'), ('IMS108'), ('IMS218')
发布于 2017-12-08 07:18:28
CREATE TABLE #TableName(ID int identity(1,1),userid varchar(50));
INSERT INTO #TableName
SELECT value as UserID FROM STRING_SPLIT('IMS080,IMS108,IMS218',',') ORDER BY value
SELECT * FROM #TableName
------------
ID userid
----------
1 IMS080
2 IMS108
3 IMS218
https://stackoverflow.com/questions/47709240
复制相似问题