您的位置:首页 > 其它

存储过程_把字符串转化为结果集

2016-06-21 18:54 239 查看
本章将讲解,Sybase下如何把含逗号字符串转化为结果集。

示例如下:

把含有逗号的字符串,拆开放入结果集。

--声明变量 @OLD 保存待处理 字符串
DECLARE @OLD VARCHAR(100)
--把待处理字符串赋值与变量
SET @OLD ='1,2,9,12,106,1489,47863,987654,3211566,6,8'

--创建临时表,保存转化后的数据
CREATE TABLE #TMPTABLE (
NEW  INT  NULL
)
--循环处理字符
WHILE(datalength(@OLD)>0)
BEGIN
IF(charindex(',', @OLD)>0)
BEGIN
--把逗号前第一个数字保存临时表
INSERT INTO #TMPTABLE VALUES (convert(int, substring(@OLD, 1, charindex(',', @OLD) - 1)))
--把剩余的继续走循环
SET @OLD=substring(@OLD,charindex(',', @OLD) + 1,datalength(@OLD))
END
ELSE
BEGIN
INSERT INTO #TMPTABLE VALUES (convert(int,@OLD))
--把@OLD赋值为空,结束循环
SET @OLD=NULL
END
END
--查询临时表
SELECT NEW FROM #TMPTABLE
--删除临时表
DROP TABLE #TMPTABLE


当用到临时表时,可以直接把临时表当做物理表一样使用。

over
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: