Lena B.: Suche ein spez. UPDATE-Funktion

Hallo liebes Forum,

ich habe eine Spalte in meiner mySQL DB mit dem Format "Text".
Ich suche ein UPDATE, dass mir den ersten Buchstaben in allen Zellen austauscht.

Ich habe:
1 asd
2 asdfsdf
3 acvdsfdg

Ich brauche:
1 xsd
2 xsdfsdf
3 xcvdsfdg

Das a mit x tauschen.
Hat mir jemand einen Rat.

Gruß
Lena

  1. Hallo,

    das sollte mit einer Kombination aus normalem Update und Substring möglich sein.
    Etwa in der Art
    UPDATE tabelle SET spalte = CONCAT('x', SUBSTR(spalte, 1, LENGTH(spalte))

    Bitte mal die Syntax der Befehle nachschlagen, es kann sein, dass da einiges nicht stimmt, aber vom Prinzip her sollte es so gehen.
    Willst du noch einschränken, dass das alte Wort mit a anfängt, dann setz einfach noch ein WHERE dazu.

    MfG
    Rouven

    --

    -------------------
    ss:) zu:) ls:& fo:) de:< va:{ ch:? sh:) n4:( rl:? br:$ js:| ie:) fl:(
    1. geht leider nicht ;-(
      bekomme folgende Fehlermeldung:

      UPDATE bild SETbild_name = CONCAT( 'i', SUBSTR(
      bild_name,
      1,
      LENGTH( bild_name ) )

      MySQL meldet:
      You have an error in your SQL syntax near '(bild_name, 1, LENGTH(bild_name))' at line 1

      finde den Fehler nicht.
      Kann mir jemand bitte helfen....

      1. OK,

        ich habe gerade doch dann mal ins Manual geschaut:
        UPDATE bild SET bild_name = CONCAT('i', SUBSTRING(bild_name, 1, LENGTH(bild_name))

        Wenn das nicht funktioniert ist mein Latein am Ende - PS: ich hatte nie Latein....

        MfG
        Rouven

        --

        -------------------
        ss:) zu:) ls:& fo:) de:< va:{ ch:? sh:) n4:( rl:? br:$ js:| ie:) fl:(
    2. Hallo,

      das sollte mit einer Kombination aus normalem Update und Substring möglich sein.
      Etwa in der Art
      UPDATE tabelle SET spalte = CONCAT('x', SUBSTR(spalte, 1, LENGTH(spalte))

      ^
      Das muss "2" heißen, denn MySQL fängt bei 1 an zu --------+

      UPDATE tabelle SET spalte = CONCAT('x', SUBSTR(spalte, 2) reicht vollkommen.

      Chris (C)