Sphinxql:几个字段匹配

Sphinxql: several fields matching

给出了带有作者和他的书的字符串。索引中有两个字段:authortitle。我需要找到作者和标题匹配的所有书籍。 字符串可能仅包含作者或仅包含标题,因此我无法解析它。如果我搜索

SELECT id FROM books 
WHERE MATCH('@(author, title) "jane smiley horse heaven");

,我没有找到 author="jane smiley" 和 title="horse heaven".

最相关的书

我需要类似的东西

SELECT id FROM books
WHERE MATCH('@(title) "horse heaven" @(author) "jane smiley"');

但不拆分字符串。

可能吗?

MATCH('@(author, title) "jane smiley horse heaven"');

要求的是确切的短语(引号是短语运算符)。即文本中连续的那四个词。正如您所说,那不会真正匹配。

而是

MATCH('@(author,title) (jane smiley horse heaven)');

应该意味着它只需要这些词。但在任何领域,技术上以任何顺序(因此可以匹配 "jane heaven, horse drawn smiley" 或其他任何东西;)