2012-02-21 20 views
0

varcharという変数がこのように定義されています。SQL Server 2005の変数の分割値

declare @IDs varchar(50) 
set @IDs ='111,123,567,' 

今、私は@IDsで常に567

値は、我々は唯一の価値を引き出す必要がある。この場合、このも

set @IDs ='56,' 

ようにすることができ、リスト内の最後の値を抽出する必要があります56.

どうすればいいですか?これに関する助けは素晴らしいでしょう。

おかげ

クマール

+0

似た何かが、すでに求められています http://stackoverflow.com/questions/314824/t-sql-opposite-to-string-concatenation-how-to-split-string-into-multiple-レコ –

答えて

0

あなたがここで見つかった文字列スプリッタを使用することができます:http://www.sqlservercentral.com/articles/Tally+Table/72993/

これは非常に速いので、次のように呼び出すことができます:

SELECT * 
FROM dbo.DelimitedSplit8K(@IDs,',') 

これは、文字列内のすべての値の結果セットを返します。