2010-03-26 41 views
6

我正在使用Sphinx Search。除了一个问题,它对我来说工作得很好:我需要排除某些特定字段不包含单词的条目。与狮身人面像的复杂查询

东西会看起来像这样在MySQL:

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

回答

8

您可以使用狮身人面像的扩展查询语法来接你要搜索的字段。试图通过狮身人面像这样运行查询:

@yescolumn query @othercolumn -keyword 

所以在PHP页面,你可能有一个链接到一个名为$sphinx一个狮身人面像数据库:

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

点击此处了解详情:http://www.sphinxsearch.com/docs/current.html#searching