sql把行带有逗号的转化为列-尘缘晖

这篇博客介绍了如何使用SQL创建一个自定义函数,将包含逗号分隔的字符串转换为表格列。首先展示了转列函数`func_splitstring`的创建过程,该函数接受两个参数:待处理的字符串和分隔符。接着通过测试部分,展示了一个例子,其中`@ItemNo`变量包含了逗号分隔的ID,函数成功地将这些ID拆分为单独的行。最后,利用临时表和这个函数展示了查询结果。
摘要由CSDN通过智能技术生成
一、 转列函数创建:
create function func_splitstring --字符串参数 --逗号参数  
(@str nvarchar(max), @split varchar(10))  --把表值函数的返回值赋值一个变量 函数返回一个表  
returns @t Table (c1 varchar(100)) 
as 
begin  
declare @i int declare @s int 
set @i=1 
set @s=1 
while(@i>0) 
begin   
set @i=charindex(@split,@str,@s)  
if(@i>0)  begin      
insert @t(c1) values(substring(@str,@s,@i-@s))     
end      
else 
begin          
insert @t(c1) values(substring(@str,@s,len(@str)-@s+1))        
end         
set @s=@i+1        
end        
return        
end


二、测试


 declare @ItemNo varchar(1000)
 set @ItemNo='1001611160588646,1001611160588634'
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值