【发布时间】:2019-07-04 07:47:52
【问题描述】:
我在一个表中有一个包含 100.000 个句子的列表,使用 pg_trgm 我可以使用 GIN/GIST 非常快速地获得最接近的字符串 "super cool"指数。见官方例子:
https://www.postgresql.org/docs/11/pgtrgm.html
遗憾的是,我想要相反,我想要最不同的第一个,但是DESC时没有使用GIN/GIST索引,所以很慢.
SELECT t, 'super cool' <-> t AS dist
FROM test_trgm
ORDER BY dist DESC LIMIT 10;
我怎么能这样做?从源代码重建 pg_trgm ?怎么样?
【问题讨论】:
-
我相信您可能需要使用 GiST 来索引距离匹配。
-
@Lucas 我都试过了。
标签: postgresql performance indexing pg-trgm