codice:
SELECT @var1:= IF(LOCATE(' ', 'Abc Def Ghi Lmn', 2) + 1 > 2, LOCATE(' ', 'Abc Def Ghi Lmn', 2) + 1, NULL),
@var2:= IF(LOCATE(' ', 'Abc Def Ghi Lmn', @var1) + 1 > @var1, LOCATE(' ', 'Abc Def Ghi Lmn', @var1) + 1, NULL),
@var3:= IF(LOCATE(' ', 'Abc Def Ghi Lmn', @var2) + 1 > @var2, LOCATE(' ', 'Abc Def Ghi Lmn', @var2) + 1, NULL),
@var4:= IF(LOCATE(' ', 'Abc Def Ghi Lmn', @var3) + 1 > @var3, LOCATE(' ', 'Abc Def Ghi Lmn', @var3) + 1, NULL),
CONCAT_WS(' ', CONCAT(CONCAT_WS('. ',
SUBSTRING('Abc Def Ghi Lmn', 1, 1),
SUBSTRING('Abc Def Ghi Lmn', @var1, 1),
SUBSTRING('Abc Def Ghi Lmn', @var2, 1),
SUBSTRING('Abc Def Ghi Lmn', @var3, 1),
SUBSTRING('Abc Def Ghi Lmn', @var4, 1)), '.'), Cognome)
Dove appunto Cognome non è un alias ma il nome effettivo del campo.