Click here to Skip to main content
15,885,278 members
Articles / Programming Languages / SQL
Tip/Trick

SQL function to return CSV as a table

Rate me:
Please Sign up or sign in to vote.
4.20/5 (2 votes)
12 May 2010CPOL 8.3K   4  
/*************...
C++
/******************************************************************************
Function Name   : GetMyTable
Purpose         : Returns CSV as a table with each value in a row.
Execute Format  : select * from dbo.GetMyTable('1,12,14')
*******************************************************************************/

ALTER    FUNCTION [dbo].[GetMyTable]
(
    @CSV varchar(5000)
)
RETURNS @MyTable table
(
    VALUE varchar(5000)
)
as
begin
    while(charindex(',',@CSV,0) > 0)
    begin
        declare @FTEMP varchar(2000)
        set @FTEMP = substring(@CSV,0,charindex(',',@CSV))
        set @CSV = substring(@CSV,len(@FTEMP) + 2, len(@CSV))
        insert into @MyTable
        select @FTEMP
    end
    insert into @MyTable select @CSV
    return
end

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Software Developer (Senior)
India India
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

Comments and Discussions

 
-- There are no messages in this forum --