TRYB BOOLEAN obsługuje tylko odpowiedzi binarne, oznacza 0 lub 1, niezależnie od tego, czy szukany ciąg pojawia się w kolumnie, czy nie. Aby uzyskać wynik dziesiętny w celu obliczenia wagi, musisz użyć funkcji dopasowania przeciw w indeksowanych kolumnach.
Możesz użyć trybu logicznego w ten sposób, aby uzyskać swoją wagę:
SELECT *, ((1.3 * (MATCH(column1) AGAINST ('query' IN BOOLEAN MODE))) +
(0.6 * (MATCH(column2) AGAINST ('query' IN BOOLEAN MODE)))) AS relevance
FROM table WHERE ( MATCH(column1,column2) AGAINST
('query' IN BOOLEAN MODE) ) ORDER BY relevance DESC
Zaletą trybu logicznego jest to, że można go używać na kolumnach nieindeksowanych, ale tylko z wynikiem 0,1, tryb nielogiczny zwraca wynik dziesiętny, ale można go zastosować tylko do kolumn indeksowanych... zobacz także tutaj .