我尝试使用postgresql-8.4和django实现全文/部分文本搜索
SELECT * FROM fts WHERE body_tsvector @@ plainto_tsquery('english','hello welcome')可用记录包括
'hello world'
'hello old world'
'hi welcome'但是这个查询的结果并不像预期的那样,它显示了零个记录,.How这个部分/全文搜索是可以提前使用plainto_tsquery?Thanks的。
发布于 2013-04-05 19:37:29
看起来您期望plainto_tsquery执行| (OR)查询。但是the docs状态:
plainto_tsquery将未格式化的文本querytext转换为tsquery。文本被解析和规范化,就像to_tsvector一样,然后在幸存的单词之间插入& ( and )布尔运算符。
因此,要执行所需操作,必须自己解析文本,然后使用|运算符创建一个ts_query。
SELECT * FROM fts
WHERE body_tsvector @@ to_tsquery('english','hello | welcome');https://stackoverflow.com/questions/15827392
复制相似问题