2017-06-13 16 views
0

単語を置き換えようとしていません。文字列全体を削除せずに、テーブルから特定の単語を削除しようとしています。 私はこの試みた:文字列内の複数の単語を削除する

select replace(replace([CRIDGI], 'inactive', ''), 'active', '') AS [CRID] 

残念ながら、一般的にはSQL:あなたはこの使用して、ネストした置き換えを行うことができますだけで、非アクティブ

+1

あなたはどのデータベースを使用していますか?単語が文字列に複数回現れることはありますか? 1つの文字列に複数の単語が複数回存在する可能性はありますか?前後の例を実際のものにしてください。 –

+0

データベースのサポートは正規表現に置き換えられますか? –

答えて

0

より

replace ([CRIDGI], 'inactive','') AS [CRID], 

をし、それが働いたが、私はより多くの単語を追加する必要があります - そしてほとんどのデータベース - は、かなりひどい文字列操作機能を持っています。データベースには役立つ機能(OracleやPostgresなど)があるかもしれませんが、ネストされた置換よりもうまくいくのは難しいです。

+0

それは働いた!ありがとうございます – rebecca

+3

あなたの文字列が "放射性"であれば、それは意図された動作ではない "無線"として終わるでしょう。素敵な正規表現の世界に向かう必要があるかもしれません。 :-)すなわち、空白で囲まれている場合や、行末などで「アクティブ」をNULLに置き換えるだけです。 –

関連する問題