Ich habe eine MySQL-Datenbank Tabelle 'Fotos' mit einer Spalte 'Dateiname'. Ich muss die Leerzeichen in den Dateinamensspaltenwerten durch Unterstriche ersetzen. Ist es mit einer einzelnen/mehreren Abfrage möglich? Wenn das so ist, wie?MySQL-Abfrage zum Ersetzen von Leerzeichen in einer Spalte durch Unterstriche
17
A
Antwort
41
können Sie verwenden, um die REPLACE
Funktion:
REPLACE(str,from_str,to_str)
Gibt den String
str
mit allen Vorkommen der Zeichenfolgefrom_str
durch dieto_str
Zeichenfolge ersetzt.REPLACE()
führt eine Übereinstimmung bei der Suche nachfrom_str
.
Also, alle Vorkommen eines Zeichens in allen Zeilen einer Tabelle durch eine andere zu ersetzen, so etwas tun sollte:
update photos set filename = replace(filename, ' ', '_');
dh Sie für ‚‘ in der Spalte suchen filename
und benutze stattdessen '_'; und setzen Sie das Ergebnis zurück in filename
.
6
update photos set filename = replace(filename,' ', '_');