SQL Q&A

 

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

ご質問事項

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

状況

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

何卒よろしくお願いします。
このエントリーをはてなブックマークに追加
2014-04-03 09:36:23   1334

コメント

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)
ありがとうございます。
本当に助かります。

SQL Server2005 復元の時、エラーが検出されました  (2)

-.日付:2014-04-21   カテゴリ : -   閲覧数:1703

nvarcharとdatetimeで作成された日付の抽出方法について  (1)

-.日付:2014-04-16   カテゴリ : -   閲覧数:1386

日時範囲でグループ化された最大値の取得について質問~  (1)

-.日付:2014-04-14   カテゴリ : -   閲覧数:1358

SQL 特定のカラムが最大値のレコード取得  (2)

-.日付:2014-04-08   カテゴリ : -   閲覧数:1514

SQL文「DISTINCT」の「ORDER BY」について  (2)

-.日付:2014-04-07   カテゴリ : -   閲覧数:1392

SQLサーバーでテキスト編集するときの「改行」コード挿入  (2)

-.日付:2014-04-04   カテゴリ : -   閲覧数:1646

SQLServerで文字列の末尾からある位置で取出するには?  (8)

-.日付:2014-04-04   カテゴリ : -   閲覧数:2185

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

-.日付:2014-04-03   カテゴリ : -   閲覧数:1334

SQL Serverのバックアップについて  (2)

-.日付:2014-04-02   カテゴリ : -   閲覧数:1357

Copyright © 2015 INNOYA.COM All rights reserved. RSS