我有这个全文搜索功能:
CREATE OR REPLACE FUNCTION search_questions(psearch text)
RETURNS TABLE (questionid INTEGER) AS $func$
BEGIN
return QUERY
SELECT DISTINCT (questions.publicationid)
FROM questions
WHERE to_tsvector(coalesce(questions.title, '')) @@ to_tsquery(psearch)
OR
publicationid IN (
SELECT DISTINCT(publications.publicationid) FROM publications WHERE to_tsvector(coalesce(publications.body, '')) @@ to_tsquery(psearch)
)
;
END
$func$ LANGUAGE plpgsql;
但它只适用于单个单词参数。如果我搜索"用户测试",则返回
ERROR: syntax error in tsquery: "user test"
有没有办法搜索包含空格的文本?
亲切的问候
答案 0 :(得分:10)
我找到了解决方法。 在这里
替换:
to_tsquery(psearch)
使用:
plainto_tsquery(psearch)
答案 1 :(得分:2)
您可以在条款周围加上单引号,但仍然使用var TasksContainer = React.createClass({
getInitialState: function(){
return {
tasks: this.props.tasks
}
console.log(tasks)
},
...
。