「サブチャネル」という名前の列があり、次のような値が含まれています。
gujrat channel,Delhi_channel,ROMG channel etc.
レポートの値をフォーマットしたい。したがって、値は代わりに次のようになります。
Gujrat,Delhi,ROMG .
基本的に、値から「チャネル」という単語を削除したいと思います。どうやってやるの?
「サブチャネル」という名前の列があり、次のような値が含まれています。
gujrat channel,Delhi_channel,ROMG channel etc.
レポートの値をフォーマットしたい。したがって、値は代わりに次のようになります。
Gujrat,Delhi,ROMG .
基本的に、値から「チャネル」という単語を削除したいと思います。どうやってやるの?
どのフレーバーの SQL - TSQL ではREPLACE
、channel と _channel の両方を使用して削除します。の構文とリンクREPLACE
:
SELECT REPLACE(REPLACE([Sub channel],'_channel',''),'channel','') FROM ...
これを試して::
update table as tab1
inner join
(Select id, REPLACE('_channel','') as new_column from table) tab2 on (tab1.id=tab2.id)
set tab1.column = tab2.new_column
ベンダーのドキュメントで文字列関数を調べて、適切なものを使用してください。
postgresql を使用している場合は、ここに移動して、ニーズに合った関数を選択してください。「replace」または「regex_replace」を使用できます。
置換を使用した例を次に示します。
SELECT replace(t1.col1, 'channel', '') AS col1 FROM t1;
これにより、「t1」という名前のテーブルからすべての行が選択され、「col1」列が選択され、チャネルという単語が削除され、列に「col1」という名前が付けられます (デフォルトでは、postgres では「replace」という名前になります)。