Certifique-se de colocar aspas em torno da variável especificada em
AGAINST
. Em PHP:
$some_term = '"'.$some_term.'"'; // Adds quotes around string
$stmt = $db->prepare('SELECT * FROM example WHERE MATCH(some_column) AGAINST(:some_term)');
$stmt->bindParam(':some_term', $some_term, PDO::PARAM_STR);
$stmt->execute();
Ou você pode fazer isso na instrução MySQL também:
$stmt = $db->prepare('SELECT * FROM example WHERE MATCH(some_column) AGAINST(CONCAT(\'"\',:some_term,\'"\')');
$stmt->bindParam(':some_term', $some_term, PDO::PARAM_STR);
$stmt->execute();
De acordo com a documentação do MySQL sobre pesquisas booleanas de texto completo :