Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Truy vấn MySQL SELECT với LIKE và tạo cột mới chứa chuỗi khớp

Kết hợp LIKE để lọc hàng, LOCATE tìm vị trí, SUBSTRING trích xuất chuỗi khớp vào cột mới.

Ví dụ minh họa

Tạo bảng và chèn dữ liệu:

mysql> CREATE TABLE DemoTable1872 (Name VARCHAR(20));
mysql> INSERT INTO DemoTable1872 VALUES('John Doe'),('Adam Smith'),('Mitchell Johnson');

Tìm hàng chứa 'John' và trích xuất từ 'John':

mysql> SELECT Name,
    SUBSTRING(Name, LOCATE('John', Name), LENGTH('John')) AS NewName
    FROM DemoTable1872
    WHERE Name LIKE '%John%';

Kết quả:

+------------------+---------+
| Name             | NewName |
+------------------+---------+
| John Doe         | John    |
| Mitchell Johnson | John    |
+------------------+---------+

Lưu ý: LOCATE trả về 0 nếu không tìm thấy. SUBSTRING(str, 0, len) trả về rỗng. Phù hợp cho tìm kiếm từ khóa đơn giản.