在SQL语句中实现split函数 zt

 declare @str varchar(8000),@start int,@end int
set @str = 'I,am,derry,'  --如果输入串不是以分割字符结尾,则 set @str = @str+‘,’
set @start = 1
set @end = charindex(',',@str,@start)  --第一次出现分割字符的下标位置
while(@end<>0)
    begin
        print substring(@str,@start,@end
-@start)  --输出成员;(@end-@start)的值等于成员的长度,不包含分割字符。
        
set @start = @end+1
        
set @end = charindex(',',@str,@start)  --输出最后一个成员后,@end =0,则退出循环。
    end
posted @ 2009-06-09 17:36  InSky  阅读(491)  评论(0编辑  收藏  举报