daten mit sql ersetzen
ich suche den einfachsten weg um in einer MySQL Tabelle daten zu ersetzen.
Alle die mit 0 beginnen, durch ein b zu ersetzen
Beispiel:
01.mpg wird b0.mpg
00000001.mpg soll b0000001.mpg
Habe es mit concat und replace versucht.....
Herzlichen Dank
Alle die mit 0 beginnen, durch ein b zu ersetzen
Beispiel:
01.mpg wird b0.mpg
00000001.mpg soll b0000001.mpg
Habe es mit concat und replace versucht.....
Herzlichen Dank
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 95152
Url: https://administrator.de/contentid/95152
Ausgedruckt am: 26.11.2024 um 13:11 Uhr
4 Kommentare
Neuester Kommentar
Hallo,
dein Beispiel ist falsch, oder? 01.mpg soll b1.mpg heißen?
Ich machen nur MS SQL, aber als Skizze:
UPDATE Dateien SET Dateiname = 'b'+RIGHT(Dateiname, LENGTH(dateiname)-1) WHERE CHARINDEX('0', Dateiname) = 1
Oder:
UPDATE Dateien SET Dateiname = STUFF(Dateiname, 1, 1, 'b') WHERE CHARINDEX('0', Dateiname) = 1
RIGHT(Dateiname, LENGTH(dateiname)-1): sollte alle Zeichen von Dateiname, bis auf das erste liefern. Dafür wird ja nachher ein b davorgeschrieben
WHERE CHARINDEX('0', Dateiname) = 1: liefert alle Zeilen, bei denen Dateiname mit 0 beginnt
STUFF(Dateiname, 1, 1, 'b'): Löscht aus Dateiname an Position 1 ein Zeichen und fügt stattessen b ein.
Gruß
Filipp
dein Beispiel ist falsch, oder? 01.mpg soll b1.mpg heißen?
Ich machen nur MS SQL, aber als Skizze:
UPDATE Dateien SET Dateiname = 'b'+RIGHT(Dateiname, LENGTH(dateiname)-1) WHERE CHARINDEX('0', Dateiname) = 1
Oder:
UPDATE Dateien SET Dateiname = STUFF(Dateiname, 1, 1, 'b') WHERE CHARINDEX('0', Dateiname) = 1
RIGHT(Dateiname, LENGTH(dateiname)-1): sollte alle Zeichen von Dateiname, bis auf das erste liefern. Dafür wird ja nachher ein b davorgeschrieben
WHERE CHARINDEX('0', Dateiname) = 1: liefert alle Zeilen, bei denen Dateiname mit 0 beginnt
STUFF(Dateiname, 1, 1, 'b'): Löscht aus Dateiname an Position 1 ein Zeichen und fügt stattessen b ein.
Gruß
Filipp