Ersetzen Sie das Leerzeichen ("") durch kein Leerzeichen ("") in einer Spalte

8

Ich habe einen Tisch wie diesen:

ID | Propinsi | Kota |
_________________________
 1 | Aceh | Denpasar
 2 | Aceh | Banda Aceh
 3 | Sumatera | Asahan

Diese Tabelle enthält viele Zeilen. Das Problem ist, dass ich das Leerzeichen vor dem Text in der Spalte Kotafür alle Zeilen wie folgt ersetzen möchte :

ID | Propinsi | Kota |
_________________________
 1 | Aceh | Denpasar
 2 | Aceh | Banda Aceh
 3 | Sumatera | Asahan

Ich habe Google durchsucht, die Funktion replacein MySQL betrifft nur eine Zeile:

SELECT REPLACE(string_column, 'search', 'replace') as Kota

Kann jemand mein Problem beheben?

Uchsun
quelle

Antworten:

17

Versuche dies:

Ohne Platz zeigen:

select trim(kota) from yourtable

So ändern Sie Ihre Daten:

update yourtable set kota = trim(kota);

TRIMFunktion ist anders als REPLACE. REPLACEersetzt alle Vorkommen einer Zeichenfolge; TRIMEntfernt nur die Leerzeichen am Anfang und Ende Ihrer Zeichenfolge.

Wenn Sie nur von Anfang an entfernen möchten, können Sie LTRIMstattdessen verwenden. Für das Ende können nur Sie verwenden RTRIM.

Joe Taras
quelle
6

Führen Sie eine neue Abfrage in MySQL aus

select REPLACE(kota,' ','') from table-name

Dies zeigt das Ergebnis, wie es aussieht, nachdem Leerzeichen aus der Spalte entfernt und aktualisiert wurden

update table-name set kota = REPLACE(kota,' ','')

Speichern.

Vikalp Sharma
quelle
2
Der Fragesteller möchte nur "Das Leerzeichen vor dem Text in Spalte Kota für alle ROw ersetzen". Ihre Lösung ersetzt alle Bereiche, nicht nur die führenden.
Colin 't Hart
0
        /*in Sql remove extra space b/w string*/
SELECT REPLACE(@Variable, ' ', '')

        OR 

          /*in Sql remove extra space b/w string*/
        DECLARE @str varchar(150)
        SET @str='Hello    Welcome   to   stackover     flow '
        Select REPLACE(REPLACE(REPLACE(@str,' ','{}'),'}{',''),'{}',' ')



    /*in c#*/
     // Mysample string
                string str ="hi you           are          a demo";

                //Split the words based on white sapce
                var demo= str .Split(' ').Where(s => !string.IsNullOrWhiteSpace(s));

                //Join the values back and add a single space in between
                        str = string.Join(" ", demo);

    //output: string str ="hi you are a demo";
JIYAUL MUSTAPHA
quelle
Bitte erläutern Sie, wie Ihre Anfrage das Problem des Autors löst. Antworten ohne Erklärung werden im Allgemeinen nicht gut aufgenommen.
Glorfindel
-2
UPDATE yourtable SET kota = TRIM(BOTH ' ' from kota);
user145623
quelle
2
Wie unterscheidet sich das von der akzeptierten Antwort?
Dekso