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?

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.


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.


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";

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);

2
Wie unterscheidet sich das von der akzeptierten Antwort?
Dekso
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.