до сих пор я следующий запрос SQL, который отлично работает:Добавить другую таблицу MYSQL запрос
SELECT *,
MATCH(title, content_plain_text) AGAINST ('$searchTerm') AS score,
(MATCH(title, content_plain_text) AGAINST ('$searchTerm')/maxScore) AS normalisedScore
FROM pages,
(SELECT MAX(MATCH(title, content_plain_text) AGAINST ('$searchTerm')) AS maxScore
FROM pages) maxScoreTable
WHERE MATCH(title, content_plain_text) AGAINST ('$searchTerm')
AND active = 1
ORDER BY score DESC
Так что теперь я хочу, чтобы искать другую таблицу с теми же именами полей тоже, как я могу идти о том, что в то время как сохранить рейтинг и т. д.?
Спасибо!
Я думаю, вы могли бы использовать 'union', чтобы создать представление ваших двух таблиц и использовать представление в вашем как вы делали бы с 'pages' –
Вы действительно должны объяснить, что вы имеете в виду более четко. Например, вы должны дать этой другой таблице имя - в противном случае каждый (любой), отвечающий, должен изобрести имя для него. Он никогда не причинит вреда, чтобы явно указать соответствующее подмножество столбцов в таблице; как это, мы должны решить, что таблица 'Pages' имеет столбцы' Title', 'Content_Plain_Text' и' Active'. Вы сказали, что другие таблицы имеют одинаковые столбцы? Максимальное ранжирование выполняется по обеим таблицам. Вам действительно нужен нормализованный счет из запроса? Ваш инструмент отчетности должен быть в состоянии сделать это. –
@bbeckford: Ваша проблема решена? Пожалуйста, уточните ваши требования. –