SQL 循环输出以逗号分开的字符串,字符串可当做数组使用
2014-10-15 13:58
411 查看
存储过程时碰到的一个小问题:T-SQL数组
DECLARE @fromType VARCHAR(16);
BEGIN
SET @fromType='0,1,2,';
DECLARE @PointerPrev INT;
DECLARE @PointerCurr INT;
DECLARE @@TId VARCHAR(16);
Set @PointerPrev=1;
while (@PointerPrev < LEN(@fromType))--循环fromType
Begin
Set @PointerCurr=CharIndex(',',@fromType,@PointerPrev)--取从参数三开始,参数一在参数二中的位置
if(@PointerCurr>0)
Begin
DECLARE @i INT;
set @@TId=SUBSTRING(@fromType,@PointerPrev,@PointerCurr-@PointerPrev) ;--拆分fromType,获取类型(0:PC端 1:APP端 2:WAP端)
--Do Something
PRINT(@@TId);
PRINT(@PointerPrev);
PRINT(@PointerCurr);
PRINT('-----');
SET @PointerPrev = @PointerCurr+1;
END
END
END
DECLARE @fromType VARCHAR(16);
BEGIN
SET @fromType='0,1,2,';
DECLARE @PointerPrev INT;
DECLARE @PointerCurr INT;
DECLARE @@TId VARCHAR(16);
Set @PointerPrev=1;
while (@PointerPrev < LEN(@fromType))--循环fromType
Begin
Set @PointerCurr=CharIndex(',',@fromType,@PointerPrev)--取从参数三开始,参数一在参数二中的位置
if(@PointerCurr>0)
Begin
DECLARE @i INT;
set @@TId=SUBSTRING(@fromType,@PointerPrev,@PointerCurr-@PointerPrev) ;--拆分fromType,获取类型(0:PC端 1:APP端 2:WAP端)
--Do Something
PRINT(@@TId);
PRINT(@PointerPrev);
PRINT(@PointerCurr);
PRINT('-----');
SET @PointerPrev = @PointerCurr+1;
END
END
END
相关文章推荐
- Java中几种输出数组的for循环,以及循环中使用标签(非goto)
- 如何把一个逗号分隔的字符串转换成数组 并且倒序输出
- 使用SQL如何把用逗号等字符隔开的字符串转换成列表,以及把列合并成符合隔开的字符串(转)
- Smarty使用section语句循环输出数组
- Thinkphp volist 多重循环原样输出数组key值的使用总结
- c#经典编程实例(一基本的输入输出和循环数组的使用)
- 前台传入多个参数(数组格式),拼接成字符串中间用逗号隔开,传入到sql中用in查询.
- 【Java面试题】17 如何把一个逗号分隔的字符串转换为数组? 关于String类中split方法的使用,超级详细!!!
- C++学习笔记(一)--整形,std输出,浮点数,数组,字符串,结构,指针,循环
- Smarty使用foreach语句循环输出数组
- 编程在一个已知的字符串中查找最长单词,假定字符串中只含字母和空格,用空格来分隔单词(只使用循环,数组)
- 数组的创建/查找数组里面的内容/添加数组中元素/使用指定的字符串把数组链接起来/判断数组内是否有指定的数组元素/四种遍历进行输出数组中的元素有哪些
- 传入sql数组字符串,输出table
- 【C++】C++的输入输出、循环、条件、字符串、数组、类、继承的使用实例
- 使用SQL如何把用逗号等字符隔开的字符串转换成列表
- 字符串截取-以逗号分开保存为数组
- 使用SQL如何把用逗号等字符隔开的字符串转换成列表
- 【LVL1_5_c】【课后练习】【1】 循环为数组赋值,然后使用指针输出。
- C/C++学习之C提高-----非空格的字符串长度、去掉字符串前后空格、字符串反转、键值对字符串、const练习、二级指针做输入/输出的特性、将字符串按逗号分开,并放入二维数组打印出来
- 使用foreach循环输出数组中的元素