Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do you force mysql LIKE to be case sensitive? [duplicate]

Possible Duplicate:
Mysql Like Case Sensitive

Mysql ignores case for its LIKE comparisons.

How can you force it to perform case-sensitive LIKE comparisons?

like image 954
Bohemian Avatar asked Dec 22 '12 23:12

Bohemian


People also ask

How do I make MySQL case-sensitive?

When searching for partial strings in MySQL with LIKE you will match case-insensitive by default*. If you want to match case-sensitive, you can cast the value as binary and then do a byte-by-byte comparision vs. a character-by-character comparision. The only thing you need to add to your query is BINARY .

How do I create a like case-insensitive query in MySQL?

select * from users where lower(first_name) = 'ajay'; The method is to make the field you are searching as uppercase or lowercase then also make the search string uppercase or lowercase as per the SQL function.

Is like in MySQL case-sensitive?

Mysql ignores case for its LIKE comparisons.

How do you do case-insensitive like in SQL?

Another way for case-insensitive matching is to use a different “collation”. The default collations used by SQL Server and MySQL do not distinguish between upper and lower case letters—they are case-insensitive by default. The logic of this query is perfectly reasonable but the execution plan is not: DB2.


1 Answers

Use LIKE BINARY:

mysql> SELECT 'abc' LIKE 'ABC';     -> 1 mysql> SELECT 'abc' LIKE BINARY 'ABC';     -> 0 
like image 72
Bohemian Avatar answered Oct 18 '22 10:10

Bohemian