如何在PostgreSQL中优化多个子串的regexp_replace性能

时间:2018-04-27 18:32:01

标签: regex postgresql performance

我需要从一列字符串中删除多个子字符串。我有大约20万行,还有一大包定制"停用词。"

具体来说,我有一个表(NameTable),其中Names列中包含多个字符串。每个字符串中只有一小部分单词与我接下来要做的事情相关。 names有一个trigram/GIN索引。有没有办法加快像下面这样的查询,但有一个更大的目标字串?我使用PG10。

...

Create Index Names_trgm on NameTable using gin(Name gin_trgm_ops);

Update NameTable
   set CleanedName = regexp_replace(Name, '( fuzzy| wuzzy| was| a | bear | the |
first| time | yossarian| saw | the | chaplain | he | fell| madly| in | love|
with| him)',' ','g');

0 个答案:

没有答案