Я реализую функцию поиска на основе тегов, и у меня есть следующий SQL для сопоставления ключевых слов в столбце tags
в одной из моих таблиц.Привязать несколько параметров к полнотекстовому поиску
Пример:
row 1 tags column: car city night
row 2 tags column: truck city day
SQL:
WHERE MATCH(s.tags) AGAINST (+:keyword IN BOOLEAN MODE)
Однако, если пользователь ищет несколько ключевых слов, разделенных пробелами, таких как "автомобиль город ...", запрос должен быть:
WHERE MATCH(s.tags) AGAINST ('+:keyword1 +:keyword2 +...' IN BOOLEAN MODE)
В настоящее время у меня есть только
$stmt->bindParam(":keyword", $keyword);
, который не будет производить то, что я хочу, я считаю, что это производит:
WHERE MATCH(s.tags) AGAINST (+'keyword1 keyword2 ...' IN BOOLEAN MODE)
Как бы я связать каждое ключевое слово отдельно, чтобы произвести, что когда неизвестное количество ключевых слов? Или есть другой способ?