2016-10-27 16 views
-3

私はこのような文字列を持っています: 「私の名前はJason Fernandezです。SQLで空白文字列を分割する方法

speaceで区切られた文字列の長さが異なります。 各文字列をスペースで区切りたいので、結果として5つの異なる項目が必要です。私は

SQL Server 2008を使用しています

1 my 
2 name 
3 is 
4 Jason 
5 Fernandez 

ありがとうございました。

+2

グーグル:文字列 –

答えて

1
DECLARE @siteIds VARCHAR(255) 
DECLARE @strngLen int 
DECLARE @split TABLE(siteId VARCHAR(100)) 

SET @siteIds = 'My name is Jason Fernandez' 

SET @strngLen = CHARINDEX(' ', @siteIds) 

WHILE CHARINDEX(' ', @siteIds) > 0 
BEGIN 
    SET @strngLen = CHARINDEX(' ', @siteIds); 

    INSERT INTO @split 
    SELECT SUBSTRING(@siteIds,1,@strngLen - 1); 

    SET @siteIds = SUBSTRING(@siteIds, @strngLen + 1, LEN(@siteIds)); 
END 

INSERT INTO @split 
SELECT @siteIds 

SELECT * FROM @split 
+2

おそらく最悪の方法あなたが結果を得るためのより良い方法はありますか?あなたが弱い相手であることは間違いありません。 –

+2

を分割する「SQL Serverのスプリット機能」 –

+1

重複したリンクを確認してください。そのちょっとした提案は悪い方法では受け付けません..涼しい滞在 –

関連する問題