我是PostgreSQL的新手,我正在尝试创建一个清理表中某些列的查询。 “清理”是指删除某个符号之前或之后的所有字符。
我在名为“Adwords”的表格中有一个名为“Campaign”的列。该列在所有行中都有此字符串/结构,DE-SRC-Brand。我想在本专栏中保留的唯一地方是Brand目前所处的位置。我之前通过excel手动完成了这一操作,只需进行简单的搜索,并将“* - ”替换为搜索条件。
这个公式将如何转换为PostgreSQL?如果我想删除某个指定符号前面的字符,它会如何改变呢?如果有任何不清楚的地方,请告诉我,因为我还是这个项目的新手。
答案 0 :(得分:0)
如果要提取品牌,可以使用substring()
模式:
select substring(campaign from '%-%-#"%#"' for '#') as brand
from adwords;
您可以将其合并到update
:
update adwords
set campaign = substring(campaign from '%-%-#"%#"' for '#')
where campaign like '%-%-%';