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
, you get all column values that start with
col_name
LIKE
'a%'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_cscol_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 項12.1.8. 「CREATE TABLE
構文」.
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.