Строка поиска из базы данных, содержащая определенные символы laravel 5 - PullRequest
0 голосов
/ 05 июня 2018

В моей таблице есть столбец с именем, в котором содержится список названий предприятий.

Проблема в том, что некоторые названия предприятий содержат символы -, '.

Я использую этот запрос для поискаname

$names = Brand::where(name, 'LIKE', '%' . $request->search . '%')->get();

Пример: имя из базы данных daddy's barber shop Если я найду это слово, используя этот термин daddys barber shop без символа ', оно ничего не возвращает.Как игнорировать символ ' из базы данных, чтобы он совпадал с daddy's barber shop?Как добиться этого поиска?

Ответы [ 2 ]

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

Можно ли использовать @Rohit shah answer, используя whereRaw вместо where, но это тяжелая обработка, особенно когда в вашей таблице много необработанных строк, поэтому каждый раз при обработке заменяющих символов.

Что бы я сделал, если бы у меня был такой случай, это создать другой столбец в табале «name_alt», где я храню имена без ненужных символов и выполняю поиск в этом столбце

0 голосов
/ 05 июня 2018
SELECT
    Column_name
FROM
    Table_name
WHERE
    REPLACE(REPLACE(REPLACE(name, '-',''), ',', ''), ''', '') LIKE '%search_string%'

Этот тип запроса может служить вашим целям.

Надеюсь, это поможет вам.Дайте мне знать в случае любого запроса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...