Hi @SQL ,
The following is a general custom function that can be used to divide a column into multiple columns or multiple rows.Please refer to:
create function dbo.SplitSubString
(
@Expression varchar(8000)
,@Delimiter varchar(100)
,@ int
)
returns varchar(8000)
as
begin
declare @p int
set @p = CharIndex(@Delimiter,@Expression)
if @p > 0
begin
set @p = @p + len(@Delimiter) - 1
end
declare @i int
set @i = 1
while @i < @
begin
set @i = @i + 1
set @Expression = substring (@Expression, @p + 1,len(@Expression) - @p )
set @p = CharIndex(@Delimiter,@Expression)
if @p > 0
begin
set @p = @p + len(@Delimiter) - 1
end
else
begin
break
end
end
declare @s varchar(1000)
if @p = 0 and @i = @
begin
set @s = @Expression
end
else if @i = @
begin
set @s = substring(@Expression, 1,@p - len(@Delimiter))
end
return @s
end
GO
select
TestDB.dbo.SplitSubString(FileData,';',1) as CODE,TestDB.dbo.SplitSubString(FileData,';',2) as Label
from #tblTest
drop function dbo.SplitSubString
If you have any question, please feel free to let me know.
If the response is helpful, please click "Accept Answer" and upvote it.
Best Regards
Echo