sql把字符数组转换成表:把字符串1,2,3变成表⾥的⾏数据
需求:把字符串1,2,3变成表⾥的⾏数据
⽅法:⽤⾃定义函数实现
/*
获取字符串数组的 Table
*/
if exists (select1from sysobjects where id =object_id('Get_StrArrayStrOfTable' ))
drop Function Get_StrArrayStrOfTable
数组转换成字符串go
CREATE function Get_StrArrayStrOfTable(
@SourceSql varchar (max),
@StrSeprate varchar (10)
)
returns@temp table( F1 varchar (100))
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
GO
⽤法:
SELECT * from dbo.Get_StrArrayStrOfTable('1,2,3',',')

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。