查看内容

分割字符串

  • 2020-03-17 09:02
  • 数据库知识
  • Views

本文章来讲一下关于sql 分割字符串哦,如何进行sql字符串拆分操作了,在mmsql server中要分割就会要用到存储过程哦,其实的sql一般时实现不了的哈。

本文章来讲一下关于sql 分割字符串哦,如何进行sql字符串拆分操作了,在mmsql server中要分割就会要用到存储过程哦,其实的sql一般时实现不了的哈。

用临时表作为数组

create function f_split(@c varchar(2000),@split varchar(2)) returns @t table(col varchar(20)) as begin

while(charindex(@split,@c)0) begin insert @t(col) values (substring(@c,1,charindex(@split,@c)-1)) set @c = stuff(@c,1,charindex(@split,@c),'') end insert @t(col) values (@c) return end go

select * from dbo.f_split('dfkd,dfdkdf,dfdkf,dffjk',',')

drop function f_split col -------------------- dfkd dfdkdf dfdkf dffjk

二、按指定符号分割字符串,返回分割后的元素个数,方法很简单,就是看字符串中存在多少个分隔符号,然后再加一,就是要求的结果。

create function get_strarraylength(@str varchar(1024), --要分割的字符串@split varchar(10) --分隔符号)returns intasbegindeclare @location intdeclare @start intdeclare @length int

set @str=ltrim(rtrim(@str))set @location=charindex(@split,@str)set @length=1while @location0beginset @start=@location+1set @location=charindex(@split,@str,@start)set @length=@length+1endreturn @lengthend调用示例:select dbo.get_strarraylength('78,1,2,3',',')返回值:4

首页 1 2 末页