Postgres 不允许以这种方式连接向量:
CREATE INDEX pgweb_idx ON pgweb USING
gin(
setweight(to_tsvector('english', title),'A') ||
setweight(to_tsvector('english', body), 'B')
);
Run Code Online (Sandbox Code Playgroud)
给
ERROR: syntax error at or near "||"
它允许在 select 或 update 语句中使用此语法。
有没有办法在不向tvector表中添加列的情况下创建加权全文索引?
我真的无法很好地解释为什么在这种情况下会发生这种情况,但是您可以通过在表达式周围添加一对额外的括号来解决此问题
CREATE INDEX pgweb_idx ON pgweb USING
gin(
(setweight(to_tsvector('english', title),'A') || setweight(to_tsvector('english', body), 'B'))
);
Run Code Online (Sandbox Code Playgroud)