Thay thế không gian (định giá) bằng không có khoảng trống (định giá) trong một cột


8

Tôi có một cái bàn như thế này:

ID | Propinsi | Kota |
Ngày mai
 1 | Aceh | Denpasar
 2 | Aceh | Banda Aceh
 3 | Sumatera | Asahan

Bảng này có nhiều hàng. Vấn đề là tôi muốn thay thế khoảng trắng trước văn bản trong cột Kotacho tất cả các hàng như thế này:

ID | Propinsi | Kota |
Ngày mai
 1 | Aceh | Denpasar
 2 | Aceh | Banda Aceh
 3 | Sumatera | Asahan

Tôi đã tìm kiếm Google, chức năng replacetrong MySQL chỉ ảnh hưởng đến một hàng:

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

Ai đó có thể khắc phục vấn đề của tôi?

Câu trả lời:


17

Thử cái này:

Để hiển thị mà không có không gian:

select trim(kota) from yourtable

Để thay đổi dữ liệu của bạn:

update yourtable set kota = trim(kota);

TRIMchức năng là khác nhau REPLACE. REPLACEthay thế tất cả các lần xuất hiện của một chuỗi; TRIMchỉ xóa các khoảng trắng ở đầu và cuối chuỗi của bạn.

Nếu bạn muốn loại bỏ chỉ từ đầu, bạn có thể sử dụng LTRIMthay thế. Đối với cuối cùng chỉ có bạn có thể sử dụng RTRIM.


6

Chạy truy vấn mới trong mysql

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

điều này sẽ hiển thị kết quả trông như thế nào sau khi cắt các khoảng trắng từ cột và để cập nhật

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

Tiết kiệm.


2
Người hỏi chỉ muốn "Thay thế văn bản bến tàu trên cột Kota cho tất cả ROw". Giải pháp của bạn sẽ thay thế tất cả các không gian, không chỉ những người dẫn đầu.
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";

Vui lòng giải thích cách truy vấn của bạn giải quyết vấn đề của tác giả; câu trả lời mà không giải thích thường không nhận được tốt.
Glorfindel

-2
UPDATE yourtable SET kota = TRIM(BOTH ' ' from kota);

2
Điều này khác với câu trả lời được chấp nhận như thế nào?
dezso
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.