我有一个带有文本字段的大表,并希望使用 ILIKE 对该表进行查询,以查找包含给定子字符串的记录。它在小桌子上完美运行,但在我的情况下,这是一个相当耗时的操作,我需要它快速运行,因为我在我网站的实时搜索字段中使用它。任何想法,将不胜感激...
问问题
2898 次
2 回答
1
Check Waiting for 9.1 – Faster LIKE/ILIKE blog post from depesz for a solution using trigrams.
You'd need to use yet unreleased Postgresql 9.1 for this. And your writes would be much slower then, as trigram indexes are huge.
Full text search suggested by user12861 would help only if you're searching for words, not substrings.
于 2011-08-22T07:34:58.113 回答
0
您可能想研究全文索引。这有点复杂,也许其他人可以给出更好的描述,或者您可以尝试一些链接,例如这个: http ://wiki.postgresql.org/wiki/Full_Text_Indexing_with_PostgreSQL
于 2011-08-19T14:54:14.650 回答