Sfrutta PARSENAME ?
SELECT
PARSENAME(REPLACE(name, ' ', '.'), 2),
PARSENAME(REPLACE(name, ' ', '.'), 1)
FROM
MyTable;
MODIFICA esempio funzionante:
DECLARE @MyTable table (name varchar(25))
INSERT @MyTable
SELECT 'Joe Smith'
UNION SELECT 'Bill Jones'
UNION SELECT 'Billy Bob Braxton'
UNION SELECT 'Mark'
SELECT
PARSENAME(REPLACE(name, ' ', '.'), 2),
PARSENAME(REPLACE(name, ' ', '.'), 1)
FROM
@MyTable;
Uscita:
------ --------
Bill Jones
Bob Braxton
Joe Smith
NULL Mark
(4 row(s) affected)