Я пытаюсь создать более точную функцию поиска для моего раздела новостей на моем веб-сайте. Я использую LIKE для области содержимого, однако моя проблема в том, что, когда я ищу «три поиска», когда в базе данных он записывается как «поиск трех слов», он не возвращает никакого содержимого.
Мне посоветовали использовать MATCH, но я не могу вернуть ЛЮБЫЕ результаты с ним. Мой запрос возвращает множество полей из нескольких таблиц. В моей области поиска имеется более 1 блока поиска, который я могу изменить при необходимости, но он мне нужен, чтобы возвращать все результаты независимо от того, имеют они низкий балл или нет.
Вот мой SQL:
$sql = "SELECT news.id, news.name, news.date, news_categories.name as catName, news.author, statuses.name as statusName, MATCH(news.name, news.summary, news.content, news.keywords) AGAINST ('".$content."') AS score FROM news, news_categories, statuses WHERE news.name LIKE '%".$name."%' AND MATCH(news.name, news.summary, news.content, news.keywords) AGAINST ('".$content."') AND news_categories.id LIKE '%".$category."%' AND news.status_id LIKE '%".$status."%' AND news.status_id=statuses.id AND news.category_id=news_categories.id";