Parsing the comma separated values into a temporary table

(Works in both SQL Server 7.0 and 2000)

Declare @OrderList varchar(500)
set @OrderList = 'Order1,Order2,,Order3,,,Order4,Order5,';

drop TABLE #TempList

CREATE TABLE #TempList
(
   OrderID varchar(20)
)

DECLARE @OrderID varchar(10), @Pos int
SET @OrderList = LTRIM(RTRIM(@OrderList))+ ','
SET @Pos = CHARINDEX(',', @OrderList, 1)

IF REPLACE(@OrderList, ',', '') <> ''
BEGIN
   WHILE @Pos > 0
   BEGIN
       SET @OrderID = LTRIM(RTRIM(LEFT(@OrderList, @Pos - 1)))
       IF @OrderID <> ''
       BEGIN
           INSERT INTO #TempList (OrderID) VALUES (@OrderID)
       END
       SET @OrderList = RIGHT(@OrderList, LEN(@OrderList) - @Pos)
       SET @Pos = CHARINDEX(',', @OrderList, 1)
   END
END

SELECT * FROM #TempList t

+-+-+-+-+-+
OUTPUT
+-+-+-+-+-+

OrderID
----------
Order1
Order2
Order3
Order4
Order5

Comments

Popular posts from this blog

Auto Refresh .aspx page - ASP.NET

Auto Sequence Number in Grid Control with Paging

MVC Request Execution Stages - Life Cycle

Overview of MVC

How to Update Dependent Excel Cells Automatically

Paged Data Source - Custom Paging

LINQ - C# Programming

ASP.NET MVC Version History

How to Edit More than 200 Rows in SQL Server 2008