MsSQL   发布时间:2022-05-16  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了MsSqlServer2000上的split函数大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_944_2@

把一个字段里的字符按特定的分隔符拆分成多个字段.
      TABLE  A 
      id
      a,b,c,d,e, 
   
  请问如何把字段IDS里的字符按逗号拆分开放在TABLE  B的五个字段里面? 
   
  id_A      id_B        id_C      id_D      id_E 
  a            b              c            d            e 

 

 

  1. CREATE table TB (ID int, IDS nvarchar(100))
  2. INSERT INTO TB 
  3. SELECT 1,'a,e'
  4. UNION ALL
  5. SELECT 2,'F,G,K,L,M,N'
  6. IF object_id('DBO.SPLIT_STR') IS NOT NULL
  7. DROP@R_762_3816@ DBO.SPLIT_STR
  8. GO
  9. CREATE@R_762_3816@ DBO.SPLIT_STR(
  10. @S varchar(8000),      --包含多个数据项的字符串
  11. @INDEX int,             --要获取的数据项的位置
  12. @SPLIT varchar(10)     --数据分隔符
  13. )
  14. RETURNS VARCHAR(100)
  15. AS
  16. BEGIN
  17. IF @S IS NULL rETURN(NULL)
  18. DECLARE @SPLITLEN int
  19. SELECT @SPLITLEN=LEN(@SPLIT+'A')-2
  20. WHILE @INDEX>1 AND CHARINDEX(@SPLIT,@S+@SPLIT)>0
  21. SELECT @INDEX=@INDEX-1,@S=stuFF(@S,1,CHARINDEX(@SPLIT,@S+@SPLIT)+@SPLITLEN,'')
  22. RETURN(ISNULL(LEFT(@S,@S+@SPLIT)-1),''))
  23. END
  24. GO
  25. PRINT DBO.SPLIT_STR('AA|BB|CC',2,'|')
  26. --
  27. GO
  28. SELEct ID, cast( DBO.SPLIT_STR(IDS,','as nvarchar(2)) as a ,
  29.            cast( DBO.SPLIT_STR(IDS,'as nvarchar(2)) as b ,
  30.            cast( DBO.SPLIT_STR(IDS,3,'as nvarchar(2)) as c ,4,'as nvarchar(2)) as d ,5,'as nvarchar(2)) as e 
  31. from 
  32.   TB
  33. /*
  34. ID          a    b    c    d    e
  35. ----------- ---- ---- ---- ---- ----
  36. 1           a    b    c    d    e
  37. 2           F    G    K    L    M
  38. */
@H_944_2@ @H_944_2@
@H_944_2@
@H_944_2@

大佬总结

以上是大佬教程为你收集整理的MsSqlServer2000上的split函数全部内容,希望文章能够帮你解决MsSqlServer2000上的split函数所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签:bcde