2017-04-21 79 views
0

我剛剛發現MySQL 匹配的巨大好處,但只是偶然發現了麻煩。爲什麼MySQL與列匹配返回負面結果?

如果聯接的table2沒有配對的行。 MySQL匹配返回值爲NULL的配對/連接列的負值。從匹配組中刪除列會返回相關性的正值。爲什麼一個NULL列會導致整個匹配返回-2?

select *, match(t1.column1, t1.column2, t1.column3, t1.column4, t2.column5) against ('search string' in boolean mode) as relevance 
from table1 t1 
left join table2 t2 on (t2.id = t2.column_id) 
/*having relevance > 0*/ 
order by relevance desc; 

回答

0

我想。

如果搜索文本包含運算符' - '或'+'會怎麼樣?

只要您的搜索文字上有運算符' - ',相關性就會爲負數

相關問題