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

Làm thế nào để tìm kiếm chuỗi chính xác trong MySQL?

Bạn có thể sử dụng nhị phân để tìm kiếm chuỗi chính xác trong MySQL. Cú pháp như sau:

SELECT * FROM yourTableName WHERE BINARY yourColumnName = yourStringValue;

Để hiểu cú pháp trên, chúng ta hãy tạo một bảng. Truy vấn để tạo bảng như sau:

mysql> create table ExactSearch
   -> (
   -> Id int NOT NULL AUTO_INCREMENT,
   -> UserId varchar(10),
   -> UserName varchar(20),
   -> PRIMARY KEY(Id)
   -> );
Query OK, 0 rows affected (0.69 sec)

Chèn một số bản ghi trong bảng bằng lệnh chèn. Truy vấn như sau:

mysql> insert into ExactSearch(UserId,UserName) values('USER12','John');
Query OK, 1 row affected (0.11 sec)

mysql> insert into ExactSearch(UserId,UserName) values('12USER','Carol');
Query OK, 1 row affected (0.20 sec)

mysql> insert into ExactSearch(UserId,UserName) values('USER123','Bob');
Query OK, 1 row affected (0.15 sec)

mysql> insert into ExactSearch(UserId,UserName) values('USER231','Sam');
Query OK, 1 row affected (0.18 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 ExactSearch;

Sau đây là kết quả:

+----+---------+----------+
| Id | UserId  | UserName |
+----+---------+----------+
|  1 | USER12  | John     |
|  2 | 12USER  | Carol    |
|  3 | USER123 | Bob      |
|  4 | USER231 | Sam      |
+----+---------+----------+
4 rows in set (0.00 sec)

Đây là truy vấn để tìm kiếm chuỗi chính xác trong MySQL. Chúng tôi đang tìm kiếm chuỗi “USER123”:

mysql> select *from ExactSearch where binary UserId = 'USER123';

Sau đây là kết quả:

+----+---------+----------+
| Id | UserId  | UserName |
+----+---------+----------+
| 3  | USER123 | Bob      |
+----+---------+----------+
1 row in set (0.00 sec)