使用Sphinx进行复杂查询

时间:2010-03-26 20:10:39

标签: php mysql sphinx

我正在使用Sphinx Search。除了一个问题之外,它对我来说很好用:我需要排除一些特定字段不包含单词的条目。

在MySQL中看起来像这样的东西:

SELECT * FROM table
   WHERE yescolumn = 'query' 
   AND othercolumn not like '%keyword%'

1 个答案:

答案 0 :(得分:8)

您可以使用Sphinx的扩展查询语法来选择要搜索的字段。尝试通过Sphinx运行查询,如下所示:

@yescolumn query @othercolumn -keyword

因此,在PHP页面中,您可能会链接到名为$sphinx的Sphinx数据库:

$sphinx->SetMatchMode(SPH_MATCH_EXTENDED2);
$results = $sphinx->Query('@yescolumn query @othercolumn -keyword');

此处提供更多信息:http://www.sphinxsearch.com/docs/current.html#searching