Les alias que vous donnez sont pour la sortie de la requête - ils ne sont pas disponibles dans la requête elle-même.
Vous pouvez soit répéter l'expression :
SELECT neededfield, CONCAT(firstname, ' ', lastname) as firstlast
FROM users
WHERE CONCAT(firstname, ' ', lastname) = "Bob Michael Jones"
ou encapsulez la requête
SELECT * FROM (
SELECT neededfield, CONCAT(firstname, ' ', lastname) as firstlast
FROM users) base
WHERE firstLast = "Bob Michael Jones"