Ronbov: Mit SQL nur bestimmte Teile eine Feldes auslesen

Hi!

Ich habe in einer Datenbank Email - Adressen gespeichert!

Manche (schlechten) Email Clients schicken nun anstatt nur der Email - Adresse z.B. sowas mit! "Peter Muster" perter@muster.de

Ich will allerdings nur die Email - Adresse haben. Gibt es eine Möglichkeit, wie ich den Teil zwischen den beiden Eckigen Klammern auslesen kann???

MfG, und Vielen Dank im Voraus!

Ronbov

  1. Hello,

    Ich habe in einer Datenbank Email - Adressen gespeichert!

    Manche (schlechten) Email Clients schicken nun anstatt nur der Email - Adresse z.B. sowas mit! "Peter Muster" perter@muster.de

    Ich würde mal postulieren, dass der Programmierer, der für das DB-Design und die Inserts verantwortlich war, eine (schlechte) Ausbildung hatte.

    Tom

  2. Hallo Ronbov,

    Ich will allerdings nur die Email - Adresse haben. Gibt es eine Möglichkeit, wie ich den Teil zwischen den beiden Eckigen Klammern auslesen kann???

    Für MySQL wäre z.B. folgendes möglich:

    SELECT IF(LOCATE('<', email) > 0 AND LOCATE('>',email,LOCATE('<', email)) > 0,SUBSTRING(email,LOCATE('<',email)+1,LOCATE('>',email,LOCATE('<', email)) - LOCATE('<', email) - 1),email) as email FROM email ;

    Viele Grüße,
    Christian

  3. Hallo,

    "Peter Muster" perter@muster.de
    Ich will allerdings nur die Email - Adresse haben. Gibt es eine Möglichkeit, wie ich den Teil zwischen den beiden Eckigen Klammern auslesen kann???

    1. Das sind spitze Klammern.
    2. Du hast uns nicht verraten, was Du fuer eine DB hast.
    3. Lies mal das Kapitel "String-Funktionen" im Handbuch
       zu Deiner DB. - Fuer MySQL:
       http://www.mysql.com/doc/en/String_functions.html
       http://www.mysql.com/doc/en/String_comparison_functions.html
    4. Im schlimmsten Fall musst Du zu regulaeren Ausdruecken greifen.
       Oft heisst es etwas mit regexp.

    Gruesse,

    Thomas