Я пытаюсь изменить код для полного поиска пути из этого сообщения: http://mikehillyer.com/articles/managing-hierarchical-data-in-mysql/ в модели с вложенным набором для использования FULLTEXT вместо точного соответствия.MySQL FULLTEXT возвращает только лучший ответ
Вот что я хочу: я хочу получить наилучшее соответствие для поиска из MATCH() AGAINST() и использовать знак '=', чтобы найти только один результат.
Вот что я пытался:
DELIMITER //
DROP PROCEDURE IF EXISTS find_node;
//
CREATE DEFINER = CURRENT_USER PROCEDURE find_node (
IN searched TEXT
)
proc: BEGIN
SELECT DISTINCT parent.content
FROM tree AS node,
tree AS parent
WHERE node.lft BETWEEN parent.lft AND parent.rgt
AND node.content = (SELECT content FROM tree WHERE MATCH(node.content) AGAINST(searched IN BOOLEAN MODE) LIMIT 1)
ORDER BY parent.lft;
END //
DELIMITER ;
Line beggining с И node.content, но мне кажется, что он не возвращает никаких результатов после выполнения процедуры. Я хотел бы иметь возможность получить второе, третье и n лучшее совпадение (возможно, используя LIMIT 1 OFFSET n, где n - номер результата?).
Спасибо за вашу помощь