Solución:
http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_concat-ws
SELECT CONCAT_WS(" ", `first_name`, `last_name`) AS `whole_name` FROM `users`
Cuando tiene tres columnas: nombre, apellido, nombre medio:
SELECT CASE
WHEN mid_name IS NULL OR TRIM(mid_name) ='' THEN
CONCAT_WS( " ", first_name, last_name )
ELSE
CONCAT_WS( " ", first_name, mid_name, last_name )
END
FROM USER;
Puede usar una consulta para obtener lo mismo:
SELECT CONCAT(FirstName , ' ' , MiddleName , ' ' , Lastname) AS Name FROM TableName;
Nota: Esta consulta devuelve si todas las columnas tienen algún valor si alguien es nulo o está vacío, entonces devolverá nulo para todos, significa que el Nombre devolverá “NULL”
Para evitar lo anterior podemos usar el IsNull
palabra clave para obtener lo mismo.
SELECT Concat(Ifnull(FirstName,' ') ,' ', Ifnull(MiddleName,' '),' ', Ifnull(Lastname,' ')) FROM TableName;
Si alguien contiene un valor nulo, el ” (espacio) se agregará con el siguiente valor.
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)