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

Làm cách nào để cập nhật một giá trị với chuỗi con có giá trị hiện tại bằng cách xóa dấu phân tách và các số sau dấu phân tách trong MySQL?

Ở đây, giả sử bạn có một chuỗi có dạng “ StringSeparatorNumber ”Dạng như John / 56989. Bây giờ, nếu bạn muốn xóa số sau dấu phân tách /, thì hãy sử dụng SUBSTRING_INDEX (). Đầu tiên chúng ta hãy tạo một bảng -

mysql> create table DemoTable
(
   StudentName varchar(100)
);
Query OK, 0 rows affected (1.05 sec)

Chèn một số bản ghi vào bảng bằng lệnh chèn -

mysql> insert into DemoTable values('John/56989');
Query OK, 1 row affected (0.12 sec)
mysql> insert into DemoTable values('Carol');
Query OK, 1 row affected (0.21 sec)
mysql> insert into DemoTable values('David/74674');
Query OK, 1 row affected (0.09 sec)
mysql> insert into DemoTable values('Bob/45565');
Query OK, 1 row affected (0.09 sec)

Hiển thị tất cả các bản ghi từ bảng bằng câu lệnh select -

mysql> select *from DemoTable;

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

+-------------+
| StudentName |
+-------------+
| John/56989  |
| Carol       |
| David/74674 |
| Bob/45565   |
+-------------+
4 rows in set (0.00 sec)

Sau đây là truy vấn để cập nhật một giá trị với chuỗi con có giá trị hiện tại -

mysql> update DemoTable set StudentName=substring_index(StudentName,'/',1);
Query OK, 3 rows affected (0.13 sec)
Rows matched :4 Changed :3 Warnings :0

Hãy để chúng tôi kiểm tra các bản ghi bảng một lần nữa -

mysql> select *from DemoTable;

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

+-------------+
| StudentName |
+-------------+
| John        |
| Carol       |
| David       |
| Bob         |
+-------------+
4 rows in set (0.00 sec)