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

Làm thế nào để bạn buộc MySQL LIKE phải phân biệt chữ hoa chữ thường?


Để buộc LIKE trong MySQL phải phân biệt chữ hoa chữ thường với sự trợ giúp của LIKE BINARY, sau đây là cú pháp -

select yourColumnName like binary 'anyStringValue' from yourTableName;

Để hiểu khái niệm trên, chúng ta hãy tạo một bảng. Sau đây là truy vấn để tạo bảng -

mysql> create table LikeBinaryDemo
   −> (
   −> Name varchar(200)
   −> );
Query OK, 0 rows affected (0.58 sec)

Giờ đây, bạn có thể chèn các bản ghi với các chữ cái nhỏ để buộc LIKE trong MySQL phải phân biệt chữ hoa chữ thường -

mysql> insert into LikeBinaryDemo values('john');
Query OK, 1 row affected (0.12 sec)

Hiển thị các bản ghi trong bảng. Truy vấn như sau -

mysql> select *from LikeBinaryDemo;

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

+------+
| Name |
+------+
| john |
+------+
1 row in set (0.00 sec)

Trường hợp 1 - Sử dụng BINARY

Bây giờ bạn có thể sử dụng LIKE BINARY để buộc MySQL Like phải phân biệt chữ hoa chữ thường.

NHƯ BINARY. Trong trường hợp này, chúng tôi sẽ nhận được giá trị 0 khi chúng tôi so sánh ‘john’ với ‘JOHN’. Truy vấn như sau -

mysql> select Name like binary 'JOHN' from LikeBinaryDemo;

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

+-------------------------+
| Name like binary 'JOHN' |
+-------------------------+
|                       0 |
+-------------------------+
1 row in set (0.00 sec)

Trường hợp 2 - Không sử dụng BINARY

Bây giờ chúng ta hãy xem điều gì sẽ xảy ra khi chúng ta không sử dụng BINARY. Truy vấn như sau -

mysql> select Name like 'JOHN' from LikeBinaryDemo;

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

+------------------+
| Name like 'JOHN' |
+------------------+
| 1 |
+------------------+
1 row in set (0.00 sec)

Bạn có thể sử dụng LIKE BINARY để buộc MySQL phải phân biệt chữ hoa chữ thường.