18 Stimmen

MySQL ersetzt alle Whitespaces durch -

Wie kann ich ALLE Leerzeichen aus einer Zeile entfernen? Ich sehe hier viele gleiche Fragen, aber alle Antworten lauten, die Option replace zu verwenden. Ersetzen wird nur funktionieren, um ein Leerzeichen zu entfernen, nicht alle.

z.B.: a b c wird zu a-b-c

Danke.

31voto

Fokko Driesprong Punkte 1987

Dies kann mit der folgenden MySQL-Funktion erreicht werden:

SELECT REPLACE( table.field, ' ', '-' ) FROM table;

Dies sollte alle Leerzeichen in ein - ersetzen.

6voto

update image set path =  REPLACE( image.path, ' ', '-' ) where path like '% %'

wenn Sie den Pfad in Mysql selbst aktualisieren möchten, verwenden Sie die Aktualisierung für alle Zeilen, die Leerzeichen mit %20 enthalten

4voto

tomasBULL Punkte 563

Versuchen Sie dies

replace('a b c',' ','-')

4voto

Jos Faber Punkte 1297
UPDATE table SET table.field = REPLACE( table.field, ' ', '-' );

Dadurch werden alle Felder aktualisiert, wobei alle Leerzeichen durch Bindestriche ersetzt werden. Dadurch werden die Daten in den Tabellen tatsächlich geändert. Die obige Antwort von Fokko ändert nur die Daten, die gezogen werden, also nicht die eigentlichen Daten.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X