Вот ваш запрос с добавлением JOIN
. Я только что включил один из столбцов описания; вам, конечно, нужно понять, что вам нужно, и так далее.
Примечание: код не проверен.
SELECT
post_id,
username,
post_title,
description,
post_tags,
post_cats,
MATCH(username) AGAINST (+(:keyword) IN BOOLEAN MODE) AS score_username,
MATCH(post_title) AGAINST (+(:keyword) IN BOOLEAN MODE) AS score_title,
MATCH(description) AGAINST (+(:keyword) IN BOOLEAN MODE) AS score_description,
MATCH(post_tags) AGAINST (+(:keyword) IN BOOLEAN MODE) AS score_tags,
MATCH(post_cats) AGAINST (+(:keyword) IN BOOLEAN MODE) AS score_cats,
t2.description_en
FROM topics
INNER JOIN topics2 t2 ON (topics.post_id = t2.post_id)
WHERE
MATCH(username) AGAINST (+(:keyword) IN BOOLEAN MODE) OR
MATCH(post_title) AGAINST (+(:keyword) IN BOOLEAN MODE) OR
MATCH(description) AGAINST (+(:keyword) IN BOOLEAN MODE)OR
MATCH(post_tags) AGAINST (+(:keyword) IN BOOLEAN MODE)OR
MATCH(post_cats) AGAINST (+(:keyword) IN BOOLEAN MODE)
ORDER BY is_online DESC,
(score_username+score_title*0.5+score_description*0.4+score_tags*0.3+score_cats*0.2) DESC
Только одна дополнительная строка в предложении FROM
.
Как видите, MATCH
es совсем не влияют на JOIN
- вам просто нужно указать, как связаны две таблицы.