您的位置:首页 > 数据库

SQL函数 将一个字段分隔成一个表的函数【搜藏】

2011-03-26 15:01 323 查看
例如一个字段[values]的值是:12,35,67,1235,43,87

调用这个函数之后:dbo.f_split(values,',')/*注意:前面记得加 dbo. 我调用的时候因为忘加老是说找不到函数,弄了很久呀*/

结果变成一个表:

a

--------

12

35

67

1235

43

87

将一个字段分隔为一个表的函数

ALTER function [dbo].[f_split](@SourceSql varchar(8000),@StrSeprate varchar(10))
returns @temp table(a varchar(100))
/*--实现split功能 的函数
--date    :2005-4-20
--Author :Domino
*/
as
begin
declare @i int
set @SourceSql=rtrim(ltrim(@SourceSql))
set @i=charindex(@StrSeprate,@SourceSql)
while @i>=1
begin
insert @temp values(left(@SourceSql,@i-1))
set @SourceSql=substring(@SourceSql,@i+1,len(@SourceSql)-@i)
set @i=charindex(@StrSeprate,@SourceSql)
end
if @SourceSql<>'\'
insert @temp values(@SourceSql)
return
end
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐