2

我正在尝试增强名为django-watson的第三方(真棒)django 框架,我目前需要通过迄今为止未知的 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);

但我需要第三种选择,即混合上面引用的两种。我想做一些类似谷歌搜索的事情:"exact phrase" +keyword1 +keyword2

_ PS:当我搜索“确切短语”-keyword1时,它的工作原理完全符合预期_

有任何想法吗?

4

1 回答 1

2

尝试这个。

  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)
于 2014-03-25T21:46:00.977 回答