Split en MySQL

Por desgracia MySQL no tiene una función implementada para hacer split de strings. No obstante podemos crearla nosotros mismos tal y como se explica en este articulo:

MySQL Split String Function por Federico Cargnelutti

Con la función creada por Federico Cargnelutti podremos ejecutar consultas del siguiente tipo:

SELECT SPLIT_STR(name, ' ', 1) as memberfirst,
SPLIT_STR(name, ' ', 2) as memberlast
FROM users;

Si no quereis utilizar esta función o no podéis crear funciones dentro de vuestra base de datos aun así se puede implementar esta funcionalidad utilizando SUBSTRING_INDEX, es bastante mas sucio visualmente pero funciona.

SELECT SUBSTRING_INDEX(SUBSTRING_INDEX(name, ' ', 1), ' ', -1) as memberfirst,
SUBSTRING_INDEX(SUBSTRING_INDEX(name, ' ', 2), ' ', -1) as memberlast
FROM users;