デフォルトでは、MySQL
検索では大文字と小文字は区別されませんが(ケース非依存)、中には、ケース依存のキャラクタセット(czech
)もあります。
つまり、col_name LIKE 'a%'
で検索すると、A
または
a
で始まる全カラムの値が検出されます。これをケース依存にする場合は、INSTR(col_name,
"A")=1
としてプリフィックスをチェックします。または、カラム値が確実に
"A"
でなければならない場合は、STRCMP(col_name,
"A") = 0
を使用します。
簡単な比較演算(>=、>、=、<、<=
、ソートおよびグループ化)は、各文字の
``ソート値''
に基づいています。同じソート値のある文字(E、e
および e
など)は、同じ文字として扱われます。
旧 MySQL バージョンでは、LIKE
比較は、各文字の大文字の値(E == e but E <>
e)で実行されました。新しい MySQL
バージョンでは、LIKE
は他の比較演算と同じように動作します。
カラムを常にケース依存で扱う場合は、BINARY
として宣言します。 See
項6.5.3. 「CREATE TABLE
構文」。
Big5
と呼ばれるエンコードで中国語データを使用している場合、すべての文字カラムを
BINARY
にします。Big5
エンコード文字のソート順序は ASCII
コードの順序に基づいているため、これが機能します。
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.