Я пытаюсь скомпилировать это в уме ... у меня есть таблица с полями имени и фамилии, и у меня есть строка типа «Боб Джонс» или «Боб Майкл Джонс» и некоторые другие.
Дело в том, что у меня, например, имя Боб, а фамилия Майкл Джонс
так что я пытаюсь
SELECT neededfield, CONCAT(firstname, ' ', lastname) as firstlast
FROM users
WHERE firstlast = "Bob Michael Jones"
но там написано неизвестное столбец "firstlast" .. может кто-нибудь помочь пожалуйста?
Попробуй это:
источник
источник
Используйте CONCAT_WS ().
Первый аргумент является разделителем для остальных аргументов.
источник
CONCAT_WS(' ', ..
Пытаться:
Ваш псевдоним firstlast недоступен в предложении where запроса, если вы не выполняете запрос в качестве подвыбора.
источник
Есть альтернатива повторению
CONCAT
выражения или использованию подзапросов. Вы можете использоватьHAVING
предложение, которое распознает псевдонимы столбцов.Вот рабочий SQL Fiddle .
источник