Home » SQL Programming

Convert comma separated string values into table in SQL

3 November 2009 No Comment

In Sql server, we cannot manipulate with comma (,) separated string values in the ‘IN’ option of the WHERE clause.

In this article, Let us see how a solution can be provided for this requirement.

Example:

The below query results in error,

“Conversion failed when converting the varchar value ‘8, 9, 2, 12, 13, 58, 56, 57, 53, 54, 71, 69, 70, 269′ to data type int”

For that we need to convert the comma separated values into a table through the given query.

Declare @ids varchar(max)
select @ids='8, 9, 2, 12, 13, 58, 56, 57, 53, 54, 71, 69, 70, 269'
Select username from tbluser where uid in (@ids)

This query has to be modified by replacing all the comma (,) characters into “union all select “ and form an insert query to insert into a temp table and we have to get those values from the temp table.

I think this procedure will be very much helpful for sql developers,

--/************************************************
--Developer :Manivannan.S
--purpose:Query used to convert comma (,) separated
--            sting values into table
--***************************************************/
Declare @ids varchar(max)
--create a temp table with id column
create table #t (id int)
select @ids='8,9,2,12,13,58,56,57,53,54,71,69,70,269'
select @ids = 'insert #t select ' + replace(@ids, ',', ' union All select ')
print @ids
--Execute the Query
exec(@ids)
--select id from #t
--Use the temp table in inner of "in" keyword and get the result
Select username from tbluser where uid in (select id from #t)
--Finally drop the temp table
drop table #t
Line Break

Author: Manivannan (6 Articles)

Manivannan

Manivannan obtained Masters in Computer Applications from Periar University, Salem. Presently, working as a Software Engineer in GeoEdge Technologies, Coimbatore. My primary role includes developing applications in Windows and Web using .Net, SQL Server.

Leave your response!

Add your comment below, or trackback from your own site. You can also subscribe to these comments via RSS.

Be nice. Keep it clean. Stay on topic. No spam.

You can use these tags:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

This is a Gravatar-enabled weblog. To get your own globally-recognized-avatar, please register at Gravatar.

Spam protection by WP Captcha-Free

Get Adobe Flash playerPlugin by wpburn.com wordpress themes