我正在尝试增强名为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);
但是我需要第三个选项,即混合上面引用的两个选项。我想做像谷歌搜索这样的事情:"确切的短语" + keyword1 + keyword2 。
_ PS:当我搜索"确切的短语" -keyword1 它完全符合要求_
任何想法?
答案 0 :(得分: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)