Yura
Новичок
Проблема с полнотекстовым поиском
Есть 2 таблицы article с полями id, name и др. и paragraph с полями id, name, id_article
Нужно вывести все названия статей (article.name), в тексте которых встречается слово, заданное в поиске. В article содержатся только название (name) статьи и дополнительная информация (для поиска она не нужна). А сам текст статьи - в виде отдельных параграфов в табл. paragraph
для поля name таблицы paragraph - fulltext
запрос
$query = "SELECT article.name AS art_name, article.id, paragraph.id, paragraph.id_article, paragraph.name FROM article
LEFT JOIN paragraph ON article.id=paragraph.id_article
WHERE MATCH (paragraph.name) AGAINST ('$sword')";
выдает, что не найдено ничего
А следующий запрос дает 6 результатов поиска.
$query = "SELECT article.name AS art_name, article.id, paragraph.id, paragraph.id_article FROM article
LEFT JOIN paragraph ON article.id=paragraph.id_article
WHERE paragraph.name LIKE '%".$sword."%' GROUP BY article.id";
Подскажите, пожалуйста, что я не правильно сделал в 1-м запросе
Есть 2 таблицы article с полями id, name и др. и paragraph с полями id, name, id_article
Нужно вывести все названия статей (article.name), в тексте которых встречается слово, заданное в поиске. В article содержатся только название (name) статьи и дополнительная информация (для поиска она не нужна). А сам текст статьи - в виде отдельных параграфов в табл. paragraph
для поля name таблицы paragraph - fulltext
запрос
$query = "SELECT article.name AS art_name, article.id, paragraph.id, paragraph.id_article, paragraph.name FROM article
LEFT JOIN paragraph ON article.id=paragraph.id_article
WHERE MATCH (paragraph.name) AGAINST ('$sword')";
выдает, что не найдено ничего
А следующий запрос дает 6 результатов поиска.
$query = "SELECT article.name AS art_name, article.id, paragraph.id, paragraph.id_article FROM article
LEFT JOIN paragraph ON article.id=paragraph.id_article
WHERE paragraph.name LIKE '%".$sword."%' GROUP BY article.id";
Подскажите, пожалуйста, что я не правильно сделал в 1-м запросе