我需要将记录插入SQL Server表。我需要将客户端发送ID插入表中的特定列:
(2,4,123,1357,1234,5657,753);
使用this函数我拆分逗号分隔的字符串,但不知道如何将其与其他列一起插入表中
我需要创建一些能够生成插入内容的内容,例如:
insert into table_name (id,column_2,column_3) values (2, column_s_some_value, column_3_some_value);
insert into table_name (id,column_2,column_3) values (4, column_s_some_other_value, column_3_some_value);
insert into table_name (id,column_2,column_3) values (123, column_s_some_value, column_3_some_value);
ETC...
我怎样才能做到这一点?
答案 0 :(得分:2)
split函数是一个表值函数,这意味着它可以被视为一个表,你可以做一个INSERT..SELECT
insert into table_name (id,column_2,column_3)
SELECT s.item, column_s_some_value, column_3_some_value
FROM Split(@input_string, ',') s
{JOINS if needed to get other column values}
答案 1 :(得分:1)
如果您确实想要拆分字符串,最有效的方法是通过使用概述表here by Jeff Moden。我强烈建议您在任何版本的SQL Server中使用此方法。