von DPunch » Mi, 19.01.2011 15:21
Aloha
schneeeule hat geschrieben:Hat jemand eine Idee, wie das gehen könnte?
Da wirst Du wohl nicht um die Holzhammer-Methode herumkommen - und die hat die maximale Anzahl an Vornamen schon fest im Code begrenzt, Übersichtlichkeit und Wartungskomfort gibts da nicht.
Insofern in meinen Augen etwas, wovon man absolut die Finger lassen sollte.
Trotzdem viel Spass. (Häkchen bei "SQL-Kommando direkt ausführen" setzen)
Code: Alles auswählen
SELECT
CASE LOCATE(' ',"Vorname")
WHEN 0 THEN LEFT("Vorname",1) || '.'
ELSE
CASE LOCATE(' ',"Vorname",LOCATE(' ',"Vorname")+1)
WHEN 0 THEN LEFT("Vorname",1) || '. ' || SUBSTR("Vorname",LOCATE(' ',"Vorname")+1,1) || '.'
ELSE
LEFT("Vorname",1) || '. ' || SUBSTR("Vorname",LOCATE(' ',"Vorname")+1,1) || '. ' ||
SUBSTR("Vorname",LOCATE(' ',"Vorname",LOCATE(' ',"Vorname")+1)+1,1) || '.'
END
END
AS "Vorname",
"Nachname"
FROM "meineTabelle"
Aloha
[quote="schneeeule"]Hat jemand eine Idee, wie das gehen könnte?[/quote]
Da wirst Du wohl nicht um die Holzhammer-Methode herumkommen - und die hat die maximale Anzahl an Vornamen schon fest im Code begrenzt, Übersichtlichkeit und Wartungskomfort gibts da nicht.
Insofern in meinen Augen etwas, wovon man absolut die Finger lassen sollte.
Trotzdem viel Spass. (Häkchen bei "SQL-Kommando direkt ausführen" setzen)
[code]SELECT
CASE LOCATE(' ',"Vorname")
WHEN 0 THEN LEFT("Vorname",1) || '.'
ELSE
CASE LOCATE(' ',"Vorname",LOCATE(' ',"Vorname")+1)
WHEN 0 THEN LEFT("Vorname",1) || '. ' || SUBSTR("Vorname",LOCATE(' ',"Vorname")+1,1) || '.'
ELSE
LEFT("Vorname",1) || '. ' || SUBSTR("Vorname",LOCATE(' ',"Vorname")+1,1) || '. ' ||
SUBSTR("Vorname",LOCATE(' ',"Vorname",LOCATE(' ',"Vorname")+1)+1,1) || '.'
END
END
AS "Vorname",
"Nachname"
FROM "meineTabelle"[/code]