请问有谁知道这是为什么:
SELECT to_tsvector('an');
只返回
SELECT to_tsvector('nn');
或者
SELECT to_tsvector('n');
或者
SELECT to_tsvector('aa');
做?
我正在 SUPABASE 上运行的 PostgreSQL 13 上对此进行测试。
谢谢
请问有谁知道这是为什么:
SELECT to_tsvector('an');
只返回
SELECT to_tsvector('nn');
或者
SELECT to_tsvector('n');
或者
SELECT to_tsvector('aa');
做?
我正在 SUPABASE 上运行的 PostgreSQL 13 上对此进行测试。
谢谢
因为“an”是您当前设置中的停用词(可能是英语,默认设置)。
从文档
to_tsvector 函数在内部调用一个解析器,它将文档文本分解为标记并为每个标记分配一个类型。对于每个令牌,都会查阅字典列表(第 12.6 节),其中列表可能因令牌类型而异。
而且(强调我的)...
有些词被识别为停用词(第 12.6.1 节),这会导致它们被忽略,因为它们出现得太频繁以至于在搜索中没有用处。