我做了以下事情:
ALTER TABLE blog_entry ADD COLUMN body_tsv tsvector;
CREATE TRIGGER tsvectorupdate BEFORE INSERT OR UPDATE ON blog_entry
FOR EACH ROW EXECUTE PROCEDURE tsvector_update_trigger(body_tsv, 'pg_catalog.english', body);
CREATE INDEX blog_entry_tsv ON blog_entry USING gin(body_tsv);
UPDATE blog_entry SET body_tsv=to_tsvector(body);
Run Code Online (Sandbox Code Playgroud)
现在这个工作:
SELECT title FROM blog_entry WHERE body_tsv @@ plainto_tsquery('hello world');
Run Code Online (Sandbox Code Playgroud)
但是当试图搜索非英文文本时,它根本不起作用(没有结果).
我使用的是v9.2.2
请帮忙.