Moin!
Du solltest mit der MySQL-String-Funktion
SUBSTRING_INDEX(str,delim,count)
experimentieren.
Returns the substring from string str before count occurrences of the delimiter delim. If count is positive, everything to the left of the final delimiter (counting from the left) is returned. If count is negative, everything to the right of the final delimiter (counting from the right) is returned.
Gibt einen Teilstring (str) vor dem gezähltem (count) Auftreten des Trenner (delim) zurück. Ist (count) positiv wird alles vom letzten (von links gezähltem) Trenner zurückgegeben. Ist count negativ wird alle, was rechts von
mysql> SELECT SUBSTRING_INDEX('www.mysql.com', '.', 2);
-> 'www.mysql'
mysql> SELECT SUBSTRING_INDEX('www.mysql.com', '.', -2);
-> 'mysql.com'
Also:
SELECT SUBSTRING_INDEX(adresse, ':', 1) AS addr_part1 FROM table ....
-> Liefert deinen ersten Abschnitt
SELECT SUBSTRING_INDEX(adresse, ':', -1) AS addr_part3 FROM table ....
-> Liefert deinen dritten Abschnitt
für den in der Mitte müssen wir verschachteln: Wir hole uns die ersten beiden (innen) und aus dem den rechten (aussen):
SELECT SUBSTRING_INDEX(SUBSTRING_INDEX(adresse, ':', 2), ':', -1) AS addr_part2 FROM table ....
-> Liefert deinen mittleren Abschnitt
Ungetestet: es kann sein, da ist Feinschliff nötig.
MFFG (Mit freundlich- friedfertigem Grinsen)
fastix®
Als Freiberufler bin ich immer auf der Suche nach Aufträgen: Schulungen, Development. Auch für seriöse Agenturen.