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

Truy vấn MySQL để CHỌN các hàng có LIKE và tạo cột mới chứa chuỗi đã so khớp?

Đối với điều này, hãy sử dụng SUBSTRING (). Đầu tiên chúng ta hãy tạo một bảng -

mysql> create table DemoTable1872
   (
   Name varchar(20)
   );
Query OK, 0 rows affected (0.00 sec)

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

mysql> insert into DemoTable1872 values('John Doe');
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1872 values('Adam Smith');
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1872 values('Mitchell Johnson');
Query OK, 1 row affected (0.00 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 DemoTable1872;

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

+------------------+
| Name             |
+------------------+
| John Doe         |
| Adam Smith       |
| Mitchell Johnson |
+------------------+
3 rows in set (0.00 sec)

Sau đây là truy vấn để chọn các hàng có LIKE và tạo cột mới chứa chuỗi phù hợp -

mysql> select Name,
   substring(Name, locate('John', Name), length('John')) as NewName
   from DemoTable1872
   where Name like '%John%';

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

+------------------+---------+
| Name             | NewName |
+------------------+---------+
| John Doe         | John    |
| Mitchell Johnson | John    |
+------------------+---------+
2 rows in set (0.00 sec)