SQL实现split功能的函数

原创 2007年09月30日 08:39:00

分割再成批插入

declare @s varchar(8000),@sql nvarchar(4000)
set @s='1,12,1212,4545'
set @sql='insert into t(col) select '+replace(@s,',',' col union all select ')
exec(@sql)

测试
drop table #table
declare @s varchar(8000),@sql nvarchar(4000)
set @s='1,12,1212,4545,454'
create table #table (col int)
set @sql='insert into #table(col) select '+replace(@s,',',' col union all select ')
exec(@sql)
select * from #table

create function f_split(@SourceSql varchar(8000),@StrSeprate varchar(10))
returns @temp table(a varchar(100))
--实现split功能 的函数
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

用法:select * from dbo.f_split('ABC:BC:C:D:E',':')

 
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

sql中实现split()功能

原文转载:http://www.cnblogs.com/chengxiaohui/articles/2261243.html 数据库中,总是遇到一些字段内容,想根据某个标识截取一下字符串,可...

Sql字符串分组Split函数的两种实现方法

在给文章加自定义标签时,需要在存储过程中对输入的字符串按照“,”字符分割成一个字符数组。但是Sql中没有实现字符串分组的Split方法。因此就需要编写一个自定义的Split函数。我首先是使用表值函数的...

VB中Split函数的功能及用法

描述返回一个下标从零开始的一维数组,它包含指定数目的子字符串。语法Split(expression[,delimiter[,count[,compare]]])Split函数语法有如下几部分:部分描述...

SQL Server Split函数

Split 表函数将一个字符串按指定分隔符进行分割,返回一个表。 --Split 表函数将一个字符串按指定分隔符进行分割,返回一个表。 create function split( @stri...

SQL里类似SPLIT的分割字符串函数

-SQL对字符串的处理能力比较弱,比如我要循环遍历象1,2,3,4,5这样的字符串,如果用数组的话,遍历很简单,但是T-SQL不支持数组,所以处理下来比较麻烦。下边的函数,实现了象数组一样去处理字符串...

巧用C# Split()函数获取SQL语句中操作字段

这是前天工作时要求的,将SQL语句的操作字段获取出来挂在树节点上,感觉这个函数以后还有可能会用到,特此总结一下,函数中没有实现Select *的操作,只要添加判断条件即可。 工具函数:Split()...

使用SQL函数[Split]分割字符串,并放入内存表中

今天遇到一个SQL方法的编写,需要使用到 SELECT * FROM USER WHERE ID IN(@uid) @uid为字符串,但是ID是INT类型,无法编译运行,需要使用下面的函数 ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)