如何从sql server检索值(插入数据时使用Stuff函数)

时间:2015-05-25 07:37:32

标签: sql asp.net sql-server

我正在使用stuff function插入一个以逗号分隔的值。

现在我想要检索这些值,并且用逗号分隔的每个值都是唯一的,并将这些值存储在另一个变量中并使用它们 例如product_id(10,5,9)。

这是我想要读取的一行数据,并将id存储在单独的变量

1 个答案:

答案 0 :(得分:0)

检查此示例。可能适合你。但这是一个单独的记录,如果你愿意,那么你需要在这个循环之上再次需要一个额外的循环。

category.tpl

我可以问一个问题,为什么你要拆分并需要再次存储变量。你的目标是什么?

<强>更新

根据你的评论检查这个。首先,您可以从任何此链接创建一个表值函数,然后使用此sqlscript。

创建分割功能:

http://ole.michelsen.dk/blog/split-string-to-table-using-transact-sql.html http://www.sqlteam.com/forums/topic.asp?TOPIC_ID=50648

Splitting delimited values in a SQL column into multiple rows

How to split a single column values to multiple column values?

https://dba.stackexchange.com/questions/21078/t-sql-table-valued-function-to-split-a-column-on-commas

declare @S varchar(30)
set @S = '10,5,9'

declare @tempVariableTostoreID int 
while len(@S) > 0
begin      
  --here you can store it on another variable
  select @tempVariableTostoreID = LOWER( left(@S, charindex(',', @S+',')-1) )  
  select @tempVariableTostoreID
  set @S = stuff(@S, 1, charindex(',', @S+','), '')
end