sql把字符数组转换成表 :把字符串1,2,3变成表里的行数据

Posted lydg

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql把字符数组转换成表 :把字符串1,2,3变成表里的行数据相关的知识,希望对你有一定的参考价值。

 

需求:把字符串1,2,3变成表里的行数据

方法:用自定义函数实现

/*
       获取字符串数组的 Table
*/
if exists (select 1 from 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‘,‘,‘)

以上是关于sql把字符数组转换成表 :把字符串1,2,3变成表里的行数据的主要内容,如果未能解决你的问题,请参考以下文章

sqlserver 如何把查出来的日期变成字符串格式

在JS中,如何把字符串转换为数组

C#中怎样把一个字符串转换成字符形数组?

JAVA中怎么把字符串转换成字符数组

java中,如何把一个字符串转换成数组?

php中怎么把字符串转化成 array数组