首页 新闻 会员 周边

SQL 函数 分割 逗号

1
悬赏园豆:80 [已解决问题] 解决于 2010-01-11 11:40

写一个函数,主要用途是将一个字符串按照逗号分割后再输出

例如:现在有一个句子“苹果,香蕉,橘子,哈密瓜”,要把这个句子输出成“('苹果','香蕉','橘子','哈密瓜')”,注意是引号里的

在线 等

80分

问题补充: 我搞定了!大家可以看看代码~~~~经理催的太紧了,让我15分钟搞定,所以就先发个贴子了,呵呵 Create Function [dbo].[spilString](@s nvarchar(2000)) Returns nvarchar(4000) As begin declare @return nvarchar(4000),@temp nvarchar(100) set @return = '(' set @temp = '' while patindex('%,%', @s) > 0 BEGIN select @temp = substring(@s,0, patindex('%,%', @s)) select @return = @return + '''' + @temp + ''',' select @s = substring(@s, patindex('%,%', @s) + 1 ,LEN(@s)) END select @return = @return + '''' + @s + ''')' return @return end
千羽拓海的主页 千羽拓海 | 初学一级 | 园豆:0
提问于:2010-01-11 10:44
< >
分享
最佳答案
0
DECLARE @rest varchar(200)
SET @rest='aaa,bbb,ccc' ---这个是传入的参数

-------------function
select @rest=replace(replace(@rest,',',''' union all select '''),'=',''',''')
select @rest='select '''+@rest+''''
SELECT @rest
-------------

EXEC(@rest) ---可以这样执行语句

结果如下:

是否是你想要是效果?

收获园豆:40
webaspx | 小虾三级 |园豆:1973 | 2010-01-11 11:18
同样感谢!
千羽拓海 | 园豆:0 (初学一级) | 2010-01-11 11:39
其他回答(2)
0

不太明白题意,

如果只是分割字符器,可以参考下http://www.cnblogs.com/jhobo/archive/2007/06/06/773858.aspx

收获园豆:40
齐.net | 园豆:1421 (小虾三级) | 2010-01-11 11:21
同样感谢!
支持(0) 反对(0) 千羽拓海 | 园豆:0 (初学一级) | 2010-01-11 11:39
0

刚好用到,谢谢

甜甜的 | 园豆:205 (菜鸟二级) | 2011-03-29 15:30
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册