分割再成批插入
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 server中实现类似split功能的函数
本文档详细介绍了如何在Oracle数据库中实现像C#等其它编程语言中Split函数来拆分字符的功能。例子简单易懂,并附有详细的实现过程。
下面小编就为大家带来一篇SQL中实现SPLIT函数几种方法总结(必看篇)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
SQL的split函数(自定义) 支持Ntext的大字符串传入 SQL的split函数(自定义) 支持Ntext的大字符串传入 SQL的split函数(自定义) 支持Ntext的大字符串传入 SQL的split函数(自定义) 支持Ntext的大字符串传入 SQL的split...
sqlserver 实现 行转列 split 分割的函数,具体使用方法写有在文件里。
主要介绍了SQL Server实现split函数分割字符串功能及用法,结合实例形式分析了SQL Server实现split分割字符串的相关技巧与使用方法,需要的朋友可以参考下
主要介绍了sql实现split函数的脚本,大家参考使用吧
SQL FUNCTION Split 字符串分割函数 的创建,方法加实例
sqlserver 字符串分割表函数(新写法) fn_split 成表函数(带序号)
Sql Server数据库中自定义拆分字符串函数Split()
最近在oracle 中用到拆分字符串返回数组,一直头痛,因为在 oracle 中没有类似java中有split 函数 ,所以要自己写。好不容搜到一个。那网上是到处都是这个代码。怎么找都是这个方法,我就用了。这个方法如下: ...
sqlserver切割字符窜的函数,写好了的,可以直接用
set @SourceSql=stuff(@SourceSql,1,charindex(',',@SourceSql,1),'') end return end select * from dbo.f_splitstr('1,2,3,4',',') --全角和半角转换函数 Create FUNCTION f_Convert( @str ...
oracle自定义函数,字符串分解,可按分隔符分解字符串,分隔符可自己随便定义,非常灵活。欢迎下载。
--用法 select * from dbo.splitstr('a,b,c,d,e') --返回表格 a b c d e --用处 select * from tbtable where ZID in (select ZValue from dbo.splitstr('a,b,c,d,e')) ...select dbo.GetCharItem('A,B,C,DE,F,GH',',',...
一,用临时表作为数组 代码如下: 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 ...
下边的函数,实现了象数组一样去处理字符串。 一,用临时表作为数组 代码如下: create function f_split(@c varchar(2000),@split varchar(2)) returns @t table(col varchar(20)) as begin while(charindex(@split,@...