Задать вопрос
@andreysuha
Что то знаю

Как сделать поиск по дву полям?

Есть модель User. У нее есть два поля first_name и last_name. Когда я ввожу поисковый запрос например "Ив", то я могу найти пользователь допустим с first_name Иван и last_name Иванов. Но как составить запрос если Будет введено Иван Иванов? Пока приходит в голову только розбивать строку на два елемента и перебирать все возможные варианты. может есть какое-то более елегантное решение?
  • Вопрос задан
  • 91 просмотр
Подписаться 1 Простой Комментировать
Решения вопроса 2
@NubasLol
foreach (explode(' ', $query) as $search) {
    $q->where(function($q) use ($search) {
        $q
            ->where('last_name', 'ilike', "%$search%")
            ->orWhere('first_name', 'ilike', "%$search%")

    });
}
Ответ написан
Комментировать
@Nc_Soft
Ищите по CONCAT(first_name, last_name)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы