我正在尝试增强第三部分(awesome)的django框架,名为django-watson,目前我需要通过一个迄今为止未知的mysql选项,MATCH(…)AGAINST(…)。
所以,我已经知道如何检索一个确切的短语,这就是:

SELECT *
FROM patient_db
WHERE MATCH ( Name, id_number )
AGAINST ('"exact phrase"' IN BOOLEAN MODE);

我还知道如何从列表中检索包含单词的结果:
SELECT *
FROM patient_db
WHERE MATCH ( Name, id_number )
AGAINST ('+keyword1 +keyword2' IN BOOLEAN MODE);

但我需要一个第三个选项,它混合上面提到的两个。我想做一些类似谷歌搜索的事情:“精确短语”+keyword1+keyword2。
_PS:当我搜索“精确短语”时,keyword1的工作方式完全符合要求_
有什么想法吗?

最佳答案

试试这个。

  SELECT *
  FROM patient_db
  WHERE MATCH ( Name, id_number )
        AGAINST ('+keyword1 +keyword2' IN BOOLEAN MODE)
  OR    MATCH ( Name, id_number )
        AGAINST ('"exact phrase"' IN BOOLEAN MODE)

关于mysql - Mysql MATCH AGAINST选项:确切的短语以及多余的单词,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22646532/

10-11 12:07