1

次の形式の文字列があります

Text I Want to Discard (TEXT I WANT)

文字列の一部を角かっこで囲んだいだけです。この部分文字列を取得するにはどうすればよいですか?

4

2 に答える 2

3

これはどう:

select substring(col, charindex('(', col), len(col))  
from yourtable;

SQL FiddlewithDemoを参照してください

または、両方のブラケットを確認してください。これにより、開始ブラケットの位置が取得され、開始ブラケット(と終了ブラケットの間の文字列の長さが返されます。

select substring(col, charindex('(', col), charindex(')', col) - charindex('(', col) +1)
from yourtable;

SQL FiddlewithDemoを参照してください

于 2013-01-24T14:51:43.560 に答える
0

以下を試してください...動作します...

DECLARE @c varchar(100)
SET     @c = 'Text I Want to Discard (TEXT I WANT)' 
SET @c = Replace(Replace(@c,')','_'),'(','_');
SELECT SUBSTRING(
    @c, 
    CHARINDEX('_', @c) + 1, 
    LEN(@c) - CHARINDEX('_', @c) - CHARINDEX('_', REVERSE(@c))
)
于 2013-01-24T14:46:57.410 に答える