Estoy tratando de compilar esto en mi mente ... tengo una tabla con campos de nombre y apellido y tengo una cadena como "Bob Jones" o "Bob Michael Jones" y varias otras.
la cosa es que tengo, por ejemplo, Bob en el nombre y Michael Jones en el apellido
así que estoy tratando de
SELECT neededfield, CONCAT(firstname, ' ', lastname) as firstlast
FROM users
WHERE firstlast = "Bob Michael Jones"
pero dice columna desconocida "firstlast" .. ¿alguien puede ayudar por favor?
Prueba esto:
fuente
fuente
Utilice CONCAT_WS ().
El primer argumento es el separador del resto de argumentos.
fuente
CONCAT_WS(' ', ..
Tratar:
Su alias firstlast no está disponible en la cláusula where de la consulta a menos que realice la consulta como una sub-selección.
fuente
Existe una alternativa para repetir la
CONCAT
expresión o utilizar subconsultas. Puede hacer uso de laHAVING
cláusula, que reconoce los alias de columna.Aquí hay un violín SQL en funcionamiento .
fuente