我想知道您如何在Transact SQL中执行此操作:
假设您在数据库中有一串用逗号分隔的值,例如:
"1,2,3,4,5"
在Transact SQL中,您将使用以下语法:
例如,在运行此Transact SQL语句之后,数据库将有五个额外的行:
1
2
3
4
5
这很简单吗?
谢谢
答案 0 :(得分:0)
您可以为此使用STRING_SPLIT函数
https://docs.microsoft.com/en-us/sql/t-sql/functions/string-split-transact-sql?view=sql-server-2017
答案 1 :(得分:0)
DECLARE @tags NVARCHAR(400) = '1,2,3,4,5,7', @idx int
while LEN(@tags) > 1
begin
select @idx=CHARINDEX(',',@tags);
select SUBSTRING(@tags,1,@idx-1);
set @tags = SUBSTRING(@tags,@idx+1,LEN(@tags)+1)
end
select SUBSTRING(@tags,1,@idx-1);