【发布时间】:2015-04-15 01:11:36
【问题描述】:
我有一个posts,其中有一列tags。我希望能够跨标签进行全文搜索。对于我使用过的VARCHAR 列:
CREATE INDEX posts_fts_idx ON posts USING gin(to_tsvector('english', coalesce(title, ''));
SELECT "posts".* FROM "posts" WHERE (to_tsvector('english', coalesce(title, '')) @@ (to_tsquery('english', 'ruby')));
但是,对于character varying[],函数to_tsvector 不存在。如何编写一个针对每个标签运行的查询(如果有任何单个标签匹配,则理想情况下匹配)?
注意:我发现转换为字符串 (array_to_string) 非常容易,但如果可能的话,我想将每个单独的标签转换为 tsvector。
【问题讨论】:
标签: postgresql