A.5.1. Case Sensitivity in Searches
By default, MySQL searches are not case sensitive (although
there are some character sets that are never case insensitive,
such as czech). This means that if you search
with col_name LIKE
'a%', you get all column values that start with
A or a. If you want to
make this search case sensitive, make sure that one of the
operands has a case sensitive or binary collation. For example,
if you are comparing a column and a string that both have the
latin1 character set, you can use the
COLLATE operator to cause either operand to
have the latin1_general_cs or
latin1_bin collation. For example:
col_name COLLATE latin1_general_cs LIKE 'a%'
col_name LIKE 'a%' COLLATE latin1_general_cs
col_name COLLATE latin1_bin LIKE 'a%'
col_name LIKE 'a%' COLLATE latin1_bin
If you want a column always to be treated in case-sensitive
fashion, declare it with a case sensitive or binary collation.
See Section 13.1.5, “CREATE TABLE Syntax”.
Simple comparison operations (>=, >, =, <,
<=, sorting, and grouping) are based on each
character's “sort value.” Characters with the same
sort value (such as ‘E’,
‘e’, and
‘é’) are treated as the same
character.