现在我有个字段是存储的是这样类似的数据
房型:标准房,数量:1,单价:10|房型:房型2,数量:1,单价:20|房型:房型3,数量:1,单价:40|房型:房型4,数量:2,单价:30
我需要把里面的数量全部汇总到这个表的另一个字段中。
可是我不知道该怎么写了,对SQL有点弱弱,请各位看看这个能实现么?每条数据都是不一样的内容。可能实现么?
------解决方案--------------------
- SQL code
-->写函数实现create function fn_sum(@str nvarchar(1000))returns intasbegin declare @ret int, @pos int select @ret=0, @pos=charindex('数量:',@str)+3 while @pos>3 begin set @[email protected]+substring(@str, @pos, charindex(',',@str,@pos)[email protected]) set @str=substring(@str,@pos,1000) set @pos=charindex('数量:',@str)+3 end return @retendgoselect dbo.fn_sum('房型:标准房,数量:1,单价:10 ¦房型:房型2,数量:1,单价:20 ¦房型:房型3,数量:1,单价:40 ¦房型:房型4,数量:2,单价:30')