我有一个存储过程,它接受两个参数。
- 参数# 1:
StudentID
(int)(例如4 7…) - 参数#2:Books to lendIds (string)(包含以分号分隔的id (int),哪些书应该被借出),如3;45;83;37.
现在我有一个两列的表:
StudentID (Int) | BookID (Int)
我希望这个过程将第二个参数中的id与STRING_SPLIT ( @parameter2 , ';')
分开,然后将它们插入到表中,并在每个参数的前面写入studentID
。
的例子:
@Parameter1 = 4
@parameter2 = 3;45;83;37
这将导致表中的数据如下所示:
StudentID (Int) | BookID (Int)
----------------+----------------
4 | 3
4 | 45
4 | 83
4 | 37
不幸的是,我不知道如何使这个工作。你能帮助我或给我提示或关键词,我可以寻找找到解决方案吗?
您可以这样使用STRING_SPLIT
:
SELECT @parameter1 AS StudentID, value AS BookID
FROM STRING_SPLIT(@parameter2, ';');