2

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

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

,我没有得到与作者=“简笑脸”和标题=“马天堂”最相关的书。

我需要类似的东西

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

但没有拆分字符串。

可能吗?

4

1 回答 1

4

MATCH('@(author, title) "简笑脸马天堂"');

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

反而

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

应该意味着它只需要这些词。但在任何领域,技术上以任何顺序(因此可以匹配“简天堂,马拉笑脸”或其他任何东西;)

于 2015-08-25T12:55:31.213 回答