怎么用sql把一个单元格里的数组展开?

来源:百度知道 编辑:UC知道 时间:2024/05/27 17:32:59
一个单元格里类似有如下数据

cpu 500,内存 200,硬盘 300,主板 300....

如何用sql语句将这些列成两列,如

CPU 500
内存 200
硬盘 300
......

并计算出来最后的合计价格呢?

'给你一个参考,分析这类字符串,并生成临时表的
''''''''''''''''''''''''''''''''''''''''''''
declare @CurIndex int
declare @PreIndex int
set @CurIndex=1
set @PreIndex=1
while @PreIndex<=len(@SwrsCode)
begin
set @CurIndex=charindex(',',@SwrsCode,@PreIndex)
if @CurIndex>@PreIndex
begin
set @T_SwrsCode=substring(@SwrsCode,@PreIndex,@CurIndex-@PreIndex)
insert into #swrscode values(@T_SwrsCode)
end
else
begin
set @T_SwrsCode=substring(@SwrsCode,@PreIndex,len(@SwrsCode)-@PreIndex+1)
insert into #swrscode values(@T_SwrsCode)
break
end
set @PreIndex=@CurIndex+1
end