Сортировка логических полнотекстовых поисков по релевантности в MySQL, объяснение?

Я искал ресурсы, чтобы объяснить, как этот запрос точно сортирует извлеченные элементы по релевантности, и не смог найти ни одного. Надеюсь, кто-нибудь из вас сможет объяснить мне эту логистику?

SELECT *, MATCH(body, subject) AGAINST ('words' IN BOOLEAN MODE) AS relevance 
FROM `messages`
WHERE MATCH(body, subject) AGAINST ('words' IN BOOLEAN MODE)
ORDER BY relevance DESC

В этом случае я знаю, что первая половина этого запроса ищет в столбцах messages.body и messages.subject поисковый запрос "слова". Затем он возвращает эти результаты (независимо от логических операторов) в том, что является существенным "случайным порядком" (упорядоченным по тому, что найдено первым, затем найдено вторым и т. Д.).

Однако я не понимаю, как MySQL интерпретирует предложение WHERE и остальную часть запроса. Как повторение первой половины кода переупорядочивает результаты по релевантности?

Например, предложение ORDER BY, которое сортирует столбец users.user_id по desc. числовой порядок СМЫСЛ мне, потому что каждая строка / ячейка имеет четкий порядок (например, - 3, 2, 1 и т. д.)

Но как (возвращаясь к исходному запросу) MySQL интерпретирует эти "словесные" результаты (слова, явно не имеющие значений / чисел / четкого порядка) и сортирует их по релевантности?

Это потому, что булевский полнотекстовый поиск дает скрытые числовые значения этим условиям поиска? Например, если предложение AGAINST гласит:

AGAINST ('+apple -macintosh ~microsoft >windows' IN BOOLEAN MODE)

Например, "apple" получает значение 100, "macintosh" - значение -100, "microsoft" - значение 20, а "windows" - значение 40 (для отражения эффектов оператора)?

Я знаю, что это упрощает процесс (особенно если учесть, содержит ли столбец более одного из этих поисковых терминов), но это лучшее, что я получил.


Что мне в основном нужно, так это объяснение непрофессиональных терминов влияния предложения WHERE (2-я половина кода запроса) на результаты запроса в целом.

0 ответов

Другие вопросы по тегам