很抱歉,如果已经询问过这个问题。在之前提出的问题中,我无法看到它。
我有一张桌子 - '八字'。
此文件包含1,000,000个文本文档。
我只需要提到“其他事件”这个词。所以我尝试进行一些文本匹配,然后将这些文件输出到一个新表中。
我目前的代码是;
SELECT * FROM eightks\d
WHERE to_tsvector(text) @@ to_tsquery('other_events');
当我运行时,我收到以下错误
string is too long for tsvector (2368732 bytes, max 1048575 bytes)
另外,如何将匹配的行输出到新表中?
感谢任何帮助。
答案 0 :(得分:0)
tsvector的长度(lexemes + position)必须小于1兆字节
可以更改源代码并重新编译。见ts_type.h。我怀疑这不会很简单。
您可能需要将文档分成较小的部分进行搜索,然后将这些部分组合起来呈现给用户。
至于将行插入另一个表,您只需插入正确的select语句即可。基本上。 。
insert into table_name
select ...
您可能需要提供列名。