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

Truy vấn MySQL tìm kiếm họ cơ bản trong cột

Bạn có thể sử dụng toán tử LIKE để thực hiện tìm kiếm cơ bản cho họ.

Tạo bảng demo

mysql> create table DemoTable (
    -> CustomerName varchar(100),
    -> CustomerAge int
    -> );
Query OK, 0 rows affected (0.77 sec)

Chèn dữ liệu mẫu

mysql> insert into DemoTable values('John Doe', 34);
Query OK, 1 row affected (1.32 sec)
mysql> insert into DemoTable values('David Miller', 24);
Query OK, 1 row affected (0.18 sec)
mysql> insert into DemoTable values('Bob Doe', 27);
Query OK, 1 row affected (0.18 sec)
mysql> insert into DemoTable values('Carol Taylor', 29);
Query OK, 1 row affected (0.13 sec)

Hiển thị tất cả bản ghi

mysql> select * from DemoTable;

Kết quả

+--------------+-------------+
| CustomerName | CustomerAge |
+--------------+-------------+
| John Doe     | 34          |
| David Miller | 24          |
| Bob Doe      | 27          |
| Carol Taylor | 29          |
+--------------+-------------+
4 rows in set (0.00 sec)

Truy vấn tìm kiếm họ "Doe"

mysql> select * from DemoTable where CustomerName LIKE '%Doe%';

Kết quả

+--------------+-------------+
| CustomerName | CustomerAge |
+--------------+-------------+
| John Doe     | 34          |
| Bob Doe      | 27          |
+--------------+-------------+
2 rows in set (0.00 sec)

Giải thích:

  • % là ký tự đại diện khớp với bất kỳ chuỗi nào (kể cả chuỗi rỗng).
  • %Doe% khớp với bất kỳ chuỗi nào chứa "Doe" ở bất kỳ vị trí nào.
  • Để tìm chính xác họ ở cuối tên: LIKE '% Doe' (có khoảng trắng trước).

Lưu ý hiệu năng: LIKE '%...%' với ký tự đại diện ở đầu không thể sử dụng index, có thể chậm trên bảng lớn. Cân nhắc Full-Text Search cho tìm kiếm phức tạp.