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

Chọn bản ghi từ bảng dựa trên từ khóa trong MySQL

Chọn bản ghi từ bảng dựa trên từ khóa trong MySQL

Giả sử một số giá trị cột trong bảng có từ khóa cụ thể và bạn chỉ muốn những bản ghi đó. Để thực hiện, hãy sử dụng toán tử LIKE.

Hãy xem ví dụ và tạo một bảng:

mysql> create table DemoTable750 (Title varchar(200));
Query OK, 0 rows affected (0.69 sec)

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

mysql> insert into DemoTable750 values('Java and MongoDB,MySQL');
Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable750 values('MySQL,SQL Server');
Query OK, 1 row affected (0.21 sec)
mysql> insert into DemoTable750 values('PL/SQL,Python,MongoDB');
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable750 values('MySQL');
Query OK, 1 row affected (0.33 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 DemoTable750

Điều này sẽ tạo ra đầu ra sau:

+------------------------+
| Title                  |
+------------------------+
| Java and MongoDB,MySQL |
| MySQL,SQL Server       |
| PL/SQL,Python,MongoDB  |
| MySQL                  |
+------------------------+
4 rows in set (0.00 sec)

Truy vấn sau chọn bản ghi dựa trên từ khóa. Giả sử từ khóa là "MySQL":

mysql> select * from DemoTable750 where Title LIKE '%MySQL%';

Điều này sẽ tạo ra đầu ra sau:

+------------------------+
| Title                  |
+------------------------+
| Java and MongoDB,MySQL |
| MySQL,SQL Server       |
| MySQL                  |
+------------------------+
3 rows in set (0.00 sec)

Lưu ý: %MySQL% khớp chuỗi chứa "MySQL" ở bất kỳ vị trí nào. Để tìm chính xác từ (word boundary), dùng REGEXP '[[:<:]]MySQL[[:>:]]' (MySQL 8.0+) hoặc REGEXP '\\bMySQL\\b'.