文字列のあるキーワードから開始する部分の抽出

さまよい
2014-04-03 09:36 1588 2
ご質問事項

文字列の真ん中くらいに"会員番号○○○○○○"があるのですが、SQL文でその部分だけ抽出したい場合、どのようにしたらよいでしょうか?

状況

文字列の最初から"会員番号"の手前までの文字数が、データによって異なっているケースがあるので、substringで開始位置が定めることが出来ない状況です。

何卒よろしくお願いします。

コメント

2014年 04月 04日 (11:41)
こんにちは。
イノ(inno)です。

下記のようにsubstringとcharindexを使えばできます。

例文を作成しましたので、下記のSQLを実行してみてください。


DECLARE @Str nvarchar(100)

SET @Str = N'こんにちは。山田です。会員番号123456です。ありがとうございます。'

--#### 結果
SELECT SUBSTRING(@Str, CHARINDEX('会員番号', @Str), 10)

SET @Str = N'こんにちは。会員番号561257です。'

--#### 結果
SELECT SUBSTRING(@Str, CHARINDEX('会員番号', @Str), 10)
さまよい 2014年 04月 04日 (13:01)
ありがとうございます。
本当に助かります。