-1

我有一个名为“子频道”的列,其中包含以下值:

gujrat channel,Delhi_channel,ROMG channel etc.

我想格式化报告的值。所以值应该是这样的:

Gujrat,Delhi,ROMG . 

基本上我想从值中删除“通道”这个词。我怎样才能做到这一点?

4

3 回答 3

1

什么风格的 SQL - 在 TSQL 中,我将使用REPLACE并摆脱通道和 _channel。语法和链接REPLACE

替换(字符串表达式,字符串模式,字符串替换)

SELECT REPLACE(REPLACE([Sub channel],'_channel',''),'channel','') FROM ...
于 2012-06-16T17:54:20.320 回答
0

尝试这个::

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
于 2012-06-16T17:49:16.820 回答
0

在供应商的文档中查找字符串函数,并使用适当的函数。

如果您使用的是 postgresql,请到这里选择一个满足您需求的函数。您可以使用“replace”或“regex_replace”。

这是一个使用替换的示例:

SELECT replace(t1.col1, 'channel', '') AS col1 FROM t1;

这从名为“t1”的表中选择所有行,并选择“col1”列,并从中删除单词通道,并将列命名为“col1”(默认情况下,它将在 postgres 中命名为“replace”)。

于 2012-06-16T17:50:17.913 回答