Как сделать SELECT col1, col2 ИЗ таблицы ГДЕ col1 + "" + col2 НРАВИТСЯ "Джон Д%"? - PullRequest
0 голосов
/ 03 мая 2018

Я пытаюсь выбрать имя и фамилию всех пользователей, чье имя + фамилия начинается с «Джон Д», я имею в виду, что можно выбрать «Джон Доу», «Джон Дениро», «Джон Далас».

, но этот выбор не работает:

SELECT name,lastname FROM users WHERE name+" "+lastname LIKE 'john D%';

Итак, как я могу заставить это работать?

Ответы [ 3 ]

0 голосов
/ 03 мая 2018

Вы должны разделить параметры, чтобы он работал правильно.

SELECT `name`, `lastname`
FROM `users`
WHERE `name` LIKE "John%" AND `lastname` LIKE "D%"
0 голосов
/ 03 мая 2018

Или, если производительность очень важна ...

SELECT name
     , lastname 
  FROM users 
 WHERE name = 'John'
   AND lastname LIKE 'D%';
0 голосов
/ 03 мая 2018

Вы можете использовать CONCAT

SELECT name,lastname FROM users 
WHERE CONCAT(name , ' ', lastname) LIKE 'John D%';

или (лучшее решение, потому что условия будут SARGable ):

SELECT name,lastname FROM users 
WHERE name = 'John'
  and lastname LIKE 'D%'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...