Mysql匹配选项:精确短语和额外单词

Mysql匹配选项:精确短语和额外单词,mysql,django,full-text-search,match,match-against,Mysql,Django,Full Text Search,Match,Match Against,我正在尝试增强名为的第三部分(非常棒的)django框架,目前我需要通过一个迄今未知的mysql选项,匹配(…)和(…) 因此,我已经知道如何检索准确的短语,这就是: SELECT * FROM patient_db WHERE MATCH ( Name, id_number ) AGAINST ('"exact phrase"' IN BOOLEAN MODE); 我还知道如何从列表中检索包含单词的结果: SELECT * FROM patient_db WHERE MATCH (

我正在尝试增强名为的第三部分(非常棒的)django框架,目前我需要通过一个迄今未知的mysql选项,匹配(…)和(…)

因此,我已经知道如何检索准确的短语,这就是:

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:当我搜索“精确短语”-关键字1时,它完全按照需要工作_

有什么想法吗?

试试这个

  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)