Поисковые столбцы SQL отдельно с одним комбинированным ключевым словом - PullRequest
0 голосов
/ 15 марта 2019

Я создаю форму поиска для поиска имен и фамилий в таблице:

Структура таблицы:

Column 1 - First Name
Column 2 - Last Name

Вот мой текущий запрос:

SELECT * 
FROM customers 
WHERE first_name LIKE '%" . $keyword . "%'" . " OR 
    last_name LIKE '%" . $keyword . "%'"

Это прекрасно работает, если я ищу имя отдельно или фамилию отдельно.

Как я могу изменить запрос, чтобы искать как имя, так и фамилию вместе как одно ключевое слово, а также иметь возможность искать имя и фамилию отдельно?

Пример: "Джо Шмоэ"

При указанном выше запросе, если я ищу "Joe Shmoe", он не возвращает никаких результатов.

Я пытался в этом примере , но не могу понять, что правильно.

1 Ответ

3 голосов
/ 15 марта 2019

Это то, что вы хотите?

SELECT c.*
FROM customers c
WHERE CONCAT_WS(' ', first_name, last_name) LIKE '%" . $keyword . "%'" . "
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...