Поиск строк в MySQL WHERE string LIKE string (в скобках) - PullRequest
0 голосов
/ 05 июня 2018

Я пытаюсь вернуть поисковый запрос с помощью PDO, некоторые строки заключены в (), а при поиске они не отображаются.

Возьмем, к примеру, Strawberry (Ripe), которое отображается, когда яиспользуйте (r

enter image description here

Но когда я этого не сделаю:

enter image description here

Можно ли сопоставить строку в скобках для более полного и эффективного поиска.

Мой текущий код:

public function getAllFlavoursSearch($search) {
    $query = "SELECT flavour_name, flavour_company_name FROM flavours WHERE flavour_name LIKE :search OR flavour_name LIKE :search2 OR flavour_name LIKE :search3 OR flavour_company_name LIKE :search4 LIMIT 0,100";
    $stmt = $this->queryIt($query);
    $stmt = $this->bind(':search', $search. '%', PDO::PARAM_STR);
    $stmt = $this->bind(':search2', '%' .$search, PDO::PARAM_STR);
    $stmt = $this->bind(':search3', '%('.$search.')%', PDO::PARAM_STR);
    $stmt = $this->bind(':search4', '%('.$search.')%', PDO::PARAM_STR);
return $this->resultset();

1 Ответ

0 голосов
/ 05 июня 2018

есть ярлык.Функция MATCH ().измените свой запрос на это.

$query = "SELECT flavour_name, flavour_company_name FROM flavours WHERE MATCH(`flavour_name`, `flavour_name`, `flavour_company_name`) AGAINST (:search) LIMIT 0,100";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...