2012-06-21 11 views
6

Jak sugeruje tytuł, zastanawiałem się, jak concat dwa pola w where clause w mysql. Jest to przykład tego, co usiłuję osiągnąć:MySQL - CONCAT dwa pola i użyj ich w klauzuli WHERE

SELECT CONCAT_WS(' ', first_name, last_name) AS name FROM `users` 
WHERE name LIKE "%John Doe%" 

Chodzi o to, że first_name i last_name są oddzielne pola i chcę, aby umożliwić mój wniosek PHP szukać nazwy pełny osoby.

Jakieś wskazówki?

Pozdrawiam!

+0

Concat z ''% przed i po? –

Odpowiedz

11

Spróbuj ::

SELECT CONCAT_WS(' ', first_name, last_name) AS name FROM `users` 
WHERE CONCAT_WS(' ', first_name, last_name) LIKE "%John Doe%" 
+1

Dzięki, to się udało. Właściwie oczekiwałem, że w jakiś sposób skorzystam z pola aliased w 'where clause', nie wiem, czy to jest możliwe. – yoda

+0

Zapraszamy. –

0

odebrać użytkownikom jak widok następnie kwerendy poza kwerendę wybierającą

select name from (select first_name||last_name FROM `users` 
    WHERE frst_name LIKE "%John%" or last name like "%doe%") where name like '%John Doe%' 
Powiązane problemy