查询Transact SQL困难?

时间:2018-09-25 23:48:38

标签: sql-server tsql

我想知道您如何在Transact SQL中执行此操作:

假设您在数据库中有一串用逗号分隔的值,例如:

"1,2,3,4,5"

在Transact SQL中,您将使用以下语法:

  1. 读取字符串
  2. 将每个整数插入数据库中的单独一行。

例如,在运行此Transact SQL语句之后,数据库将有五个额外的行:

1
2
3
4
5

这很简单吗?

谢谢

2 个答案:

答案 0 :(得分:0)

答案 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);