2010-11-18 97 views
0

我有一個以逗號分隔的值作爲nvarchar在sql中。我需要轉換成表格。請指教。串將逗號分隔的字符串轉換爲SP中的sql表格

'f143bda4-a917-479c-8360-b63943b91d91,f312f49b-203e-4bba-a74e-82ea356ed6d3' 

我使用SQL Server 2005

+2

請搜索SO,問了很多,很多次。 .. – 2010-11-18 11:14:22

+0

我做過了,但是找不到任何鏈接,請你能拋出一些指針 – Amit 2010-11-18 11:19:27

回答

1

您正在尋找這樣的事情的

例如...

FUNCTION [dbo].[fx_Split] 
(
    @text varchar(max), 
    @splitChar char(1) 
) 
RETURNS 
@Result TABLE 
(
    RowIndex int identity(1,1), 
    SplitText varchar(max) -- choose your type here... 
) 
AS 
BEGIN 

    DECLARE @index int SET @index = 0 
    DECLARE @SplitText varchar(max) SET @SplitText = '' 
    DECLARE @TempText varchar(max) SET @SplitText = '' 

    SET @index = CHARINDEX(@splitChar, @text) 
    SET @TempText = @text 

    WHILE(@index > 0) 
    BEGIN 

     INSERT INTO @Result VALUES (SUBSTRING(@TempText, 1, @index-1)) 

     SET @TempText = LTRIM(SUBSTRING(@TempText, @index + 1, LEN(@TempText))) 

     SET @index = CHARINDEX(@splitChar, @TempText) 

    END 

    INSERT INTO @Result VALUES (@TempText) 

    RETURN 
END 
+0

是的,就像這樣。另外,請你能告訴我如何我可以獲得返回的表格到臨時表變量的語法 – Amit 2010-11-18 12:37:32

相關問題