Computer >> Máy Tính >  >> Lập trình >> MySQL

Cách chỉ thay thế giá trị lặp lại đầu tiên trong một chuỗi trong MySQL


Đối với điều này, bạn có thể sử dụng REGEXP_REPLACE (). Giả sử chuỗi của chúng tôi là -

This is my first MySQL query. This is the first tutorial. I am learning for the first time.

Chúng ta chỉ cần thay thế lần xuất hiện đầu tiên của một từ cụ thể, giả sử như “đầu tiên”. Đầu ra phải là -

This is my second MySQL query. This is the first tutorial. I am learning for the first time.

Hãy để chúng tôi tạo một bảng -

mysql> create table demo26
−> (
−> value text
−> );
Query OK, 0 rows affected (2.04 sec)

Chèn một số bản ghi vào bảng với sự trợ giúp của lệnh insert -

mysql> insert into demo26 values('This is my first MySQL query. This is the first tutorial. I am learning for the first time.');
Query OK, 1 row affected (0.10 sec)

Hiển thị các bản ghi từ bảng bằng cách sử dụng câu lệnh select -

mysql> select *from demo26;

Điều này sẽ tạo ra kết quả sau -

+---------------------------------------------------------------------------------------------+
| value                                                                                       |
+---------------------------------------------------------------------------------------------+
| This is my first MySQL query. This is the first tutorial. I am learning for the first time. |
+---------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

Sau đây là truy vấn để chỉ thay thế lần xuất hiện đầu tiên -

mysql> update demo26
−> set value = REGEXP_REPLACE(value, 'first', 'second', 1, 1 ) ;
Query OK, 1 row affected (0.19 sec)
Rows matched: 1 Changed: 1 Warnings: 0

Hiển thị các bản ghi từ bảng bằng cách sử dụng câu lệnh select -

mysql> select *from demo26;

Điều này sẽ tạo ra kết quả sau -

+----------------------------------------------------------------------------------------------+
| value                                                                                        |
+----------------------------------------------------------------------------------------------+
| This is my second MySQL query. This is the first tutorial. I am learning for the first time. |
+----------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)