我尝试从我设置艺术家的专辑中实现搜索。我从形式中得到变量我提出疑问。我成功地从表单中获取了变量。
$words = $_REQUEST['SQLfield'];
$tempquery = "SELECT * FROM album WHERE to_tsvector(artist) @@ to_tsquery('$words')";
do_sql($tempquery);
当我搜索例如Jimi Hendrix时,结果是:
query #1: SQLSTATE[42601]: Syntax error: 7 ERROR: syntax error in tsquery: "Jimi Hendrix "
我没有在PostgreSQL中使用全文搜索,但在快速扫描文档后,我认为你应该使用plainto_tsquery
函数而不是to_tsquery
,因为to_tsquery
期望'jimi & hendrix'
时plainto_tsquery
将接受'Jimi Hendrix'
等短语。