Podzieliłem tę odpowiedź na dwie (2) metody. Pierwsza metoda rozdzieli Twoje imię i nazwisko na imię, drugie imię i nazwisko. Drugie imię będzie wyświetlane jako NULL, jeśli nie ma drugiego imienia.
SELECT
SUBSTRING_INDEX(SUBSTRING_INDEX(fullname, ' ', 1), ' ', -1) AS first_name,
If( length(fullname) - length(replace(fullname, ' ', ''))>1,
SUBSTRING_INDEX(SUBSTRING_INDEX(fullname, ' ', 2), ' ', -1) ,NULL)
as middle_name,
SUBSTRING_INDEX(SUBSTRING_INDEX(fullname, ' ', 3), ' ', -1) AS last_name
FROM registeredusers
Ta druga metoda traktuje drugie imię jako część nazwiska. Z pola imienia i nazwiska wybierzemy tylko kolumnę imienia i nazwiska.
SELECT
SUBSTRING_INDEX(SUBSTRING_INDEX(fullname, ' ', 1), ' ', -1) AS first_name,
TRIM( SUBSTR(fullname, LOCATE(' ', fullname)) ) AS last_name
FROM registeredusers
Jest kilka fajnych rzeczy, które możesz zrobić za pomocą substr, locate, substring_index, itp. Sprawdź podręcznik, aby poznać prawdziwe zamieszanie. http://dev.mysql.com/doc/refman /5.0/pl/string-functions.html